<!DOCTYPE html>

<html lang="en">
<head><meta charset="utf-8"/>
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
<title>Untitled4</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<style type="text/css">
    pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: var(--jp-cell-editor-active-background) }
.highlight { background: var(--jp-cell-editor-background); color: var(--jp-mirror-editor-variable-color) }
.highlight .c { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment */
.highlight .err { color: var(--jp-mirror-editor-error-color) } /* Error */
.highlight .k { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword */
.highlight .o { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator */
.highlight .p { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation */
.highlight .ch { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Multiline */
.highlight .cp { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Preproc */
.highlight .cpf { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Single */
.highlight .cs { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Special */
.highlight .kc { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Type */
.highlight .m { color: var(--jp-mirror-editor-number-color) } /* Literal.Number */
.highlight .s { color: var(--jp-mirror-editor-string-color) } /* Literal.String */
.highlight .ow { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator.Word */
.highlight .pm { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation.Marker */
.highlight .w { color: var(--jp-mirror-editor-variable-color) } /* Text.Whitespace */
.highlight .mb { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Bin */
.highlight .mf { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Float */
.highlight .mh { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Hex */
.highlight .mi { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer */
.highlight .mo { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Oct */
.highlight .sa { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Affix */
.highlight .sb { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Backtick */
.highlight .sc { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Char */
.highlight .dl { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Delimiter */
.highlight .sd { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Doc */
.highlight .s2 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Double */
.highlight .se { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Escape */
.highlight .sh { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Heredoc */
.highlight .si { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Interpol */
.highlight .sx { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Other */
.highlight .sr { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Regex */
.highlight .s1 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Single */
.highlight .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
  </style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*
 * Mozilla scrollbar styling
 */

/* use standard opaque scrollbars for most nodes */
[data-jp-theme-scrollbars='true'] {
  scrollbar-color: rgb(var(--jp-scrollbar-thumb-color))
    var(--jp-scrollbar-background-color);
}

/* for code nodes, use a transparent style of scrollbar. These selectors
 * will match lower in the tree, and so will override the above */
[data-jp-theme-scrollbars='true'] .CodeMirror-hscrollbar,
[data-jp-theme-scrollbars='true'] .CodeMirror-vscrollbar {
  scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
}

/* tiny scrollbar */

.jp-scrollbar-tiny {
  scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
  scrollbar-width: thin;
}

/* tiny scrollbar */

.jp-scrollbar-tiny::-webkit-scrollbar,
.jp-scrollbar-tiny::-webkit-scrollbar-corner {
  background-color: transparent;
  height: 4px;
  width: 4px;
}

.jp-scrollbar-tiny::-webkit-scrollbar-thumb {
  background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
}

.jp-scrollbar-tiny::-webkit-scrollbar-track:horizontal {
  border-left: 0 solid transparent;
  border-right: 0 solid transparent;
}

.jp-scrollbar-tiny::-webkit-scrollbar-track:vertical {
  border-top: 0 solid transparent;
  border-bottom: 0 solid transparent;
}

/*
 * Lumino
 */

.lm-ScrollBar[data-orientation='horizontal'] {
  min-height: 16px;
  max-height: 16px;
  min-width: 45px;
  border-top: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='vertical'] {
  min-width: 16px;
  max-width: 16px;
  min-height: 45px;
  border-left: 1px solid #a0a0a0;
}

.lm-ScrollBar-button {
  background-color: #f0f0f0;
  background-position: center center;
  min-height: 15px;
  max-height: 15px;
  min-width: 15px;
  max-width: 15px;
}

.lm-ScrollBar-button:hover {
  background-color: #dadada;
}

.lm-ScrollBar-button.lm-mod-active {
  background-color: #cdcdcd;
}

.lm-ScrollBar-track {
  background: #f0f0f0;
}

.lm-ScrollBar-thumb {
  background: #cdcdcd;
}

.lm-ScrollBar-thumb:hover {
  background: #bababa;
}

.lm-ScrollBar-thumb.lm-mod-active {
  background: #a0a0a0;
}

.lm-ScrollBar[data-orientation='horizontal'] .lm-ScrollBar-thumb {
  height: 100%;
  min-width: 15px;
  border-left: 1px solid #a0a0a0;
  border-right: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='vertical'] .lm-ScrollBar-thumb {
  width: 100%;
  min-height: 15px;
  border-top: 1px solid #a0a0a0;
  border-bottom: 1px solid #a0a0a0;
}

.lm-ScrollBar[data-orientation='horizontal']
  .lm-ScrollBar-button[data-action='decrement'] {
  background-image: var(--jp-icon-caret-left);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='horizontal']
  .lm-ScrollBar-button[data-action='increment'] {
  background-image: var(--jp-icon-caret-right);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='vertical']
  .lm-ScrollBar-button[data-action='decrement'] {
  background-image: var(--jp-icon-caret-up);
  background-size: 17px;
}

.lm-ScrollBar[data-orientation='vertical']
  .lm-ScrollBar-button[data-action='increment'] {
  background-image: var(--jp-icon-caret-down);
  background-size: 17px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-Widget {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.lm-Widget.lm-mod-hidden {
  display: none !important;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.lm-AccordionPanel[data-orientation='horizontal'] > .lm-AccordionPanel-title {
  /* Title is rotated for horizontal accordion panel using CSS */
  display: block;
  transform-origin: top left;
  transform: rotate(-90deg) translate(-100%);
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-CommandPalette {
  display: flex;
  flex-direction: column;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-CommandPalette-search {
  flex: 0 0 auto;
}

.lm-CommandPalette-content {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  min-height: 0;
  overflow: auto;
  list-style-type: none;
}

.lm-CommandPalette-header {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.lm-CommandPalette-item {
  display: flex;
  flex-direction: row;
}

.lm-CommandPalette-itemIcon {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemContent {
  flex: 1 1 auto;
  overflow: hidden;
}

.lm-CommandPalette-itemShortcut {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemLabel {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.lm-close-icon {
  border: 1px solid transparent;
  background-color: transparent;
  position: absolute;
  z-index: 1;
  right: 3%;
  top: 0;
  bottom: 0;
  margin: auto;
  padding: 7px 0;
  display: none;
  vertical-align: middle;
  outline: 0;
  cursor: pointer;
}
.lm-close-icon:after {
  content: 'X';
  display: block;
  width: 15px;
  height: 15px;
  text-align: center;
  color: #000;
  font-weight: normal;
  font-size: 12px;
  cursor: pointer;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-DockPanel {
  z-index: 0;
}

.lm-DockPanel-widget {
  z-index: 0;
}

.lm-DockPanel-tabBar {
  z-index: 1;
}

.lm-DockPanel-handle {
  z-index: 2;
}

.lm-DockPanel-handle.lm-mod-hidden {
  display: none !important;
}

.lm-DockPanel-handle:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}

.lm-DockPanel-handle[data-orientation='horizontal'] {
  cursor: ew-resize;
}

.lm-DockPanel-handle[data-orientation='vertical'] {
  cursor: ns-resize;
}

.lm-DockPanel-handle[data-orientation='horizontal']:after {
  left: 50%;
  min-width: 8px;
  transform: translateX(-50%);
}

.lm-DockPanel-handle[data-orientation='vertical']:after {
  top: 50%;
  min-height: 8px;
  transform: translateY(-50%);
}

.lm-DockPanel-overlay {
  z-index: 3;
  box-sizing: border-box;
  pointer-events: none;
}

.lm-DockPanel-overlay.lm-mod-hidden {
  display: none !important;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-Menu {
  z-index: 10000;
  position: absolute;
  white-space: nowrap;
  overflow-x: hidden;
  overflow-y: auto;
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-Menu-content {
  margin: 0;
  padding: 0;
  display: table;
  list-style-type: none;
}

.lm-Menu-item {
  display: table-row;
}

.lm-Menu-item.lm-mod-hidden,
.lm-Menu-item.lm-mod-collapsed {
  display: none !important;
}

.lm-Menu-itemIcon,
.lm-Menu-itemSubmenuIcon {
  display: table-cell;
  text-align: center;
}

.lm-Menu-itemLabel {
  display: table-cell;
  text-align: left;
}

.lm-Menu-itemShortcut {
  display: table-cell;
  text-align: right;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-MenuBar {
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-MenuBar-content {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  list-style-type: none;
}

.lm-MenuBar-item {
  box-sizing: border-box;
}

.lm-MenuBar-itemIcon,
.lm-MenuBar-itemLabel {
  display: inline-block;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-ScrollBar {
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-ScrollBar[data-orientation='horizontal'] {
  flex-direction: row;
}

.lm-ScrollBar[data-orientation='vertical'] {
  flex-direction: column;
}

.lm-ScrollBar-button {
  box-sizing: border-box;
  flex: 0 0 auto;
}

.lm-ScrollBar-track {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  flex: 1 1 auto;
}

.lm-ScrollBar-thumb {
  box-sizing: border-box;
  position: absolute;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-SplitPanel-child {
  z-index: 0;
}

.lm-SplitPanel-handle {
  z-index: 1;
}

.lm-SplitPanel-handle.lm-mod-hidden {
  display: none !important;
}

.lm-SplitPanel-handle:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}

.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle {
  cursor: ew-resize;
}

.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle {
  cursor: ns-resize;
}

.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle:after {
  left: 50%;
  min-width: 8px;
  transform: translateX(-50%);
}

.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle:after {
  top: 50%;
  min-height: 8px;
  transform: translateY(-50%);
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-TabBar {
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.lm-TabBar[data-orientation='horizontal'] {
  flex-direction: row;
  align-items: flex-end;
}

.lm-TabBar[data-orientation='vertical'] {
  flex-direction: column;
  align-items: flex-end;
}

.lm-TabBar-content {
  margin: 0;
  padding: 0;
  display: flex;
  flex: 1 1 auto;
  list-style-type: none;
}

.lm-TabBar[data-orientation='horizontal'] > .lm-TabBar-content {
  flex-direction: row;
}

.lm-TabBar[data-orientation='vertical'] > .lm-TabBar-content {
  flex-direction: column;
}

.lm-TabBar-tab {
  display: flex;
  flex-direction: row;
  box-sizing: border-box;
  overflow: hidden;
  touch-action: none; /* Disable native Drag/Drop */
}

.lm-TabBar-tabIcon,
.lm-TabBar-tabCloseIcon {
  flex: 0 0 auto;
}

.lm-TabBar-tabLabel {
  flex: 1 1 auto;
  overflow: hidden;
  white-space: nowrap;
}

.lm-TabBar-tabInput {
  user-select: all;
  width: 100%;
  box-sizing: border-box;
}

.lm-TabBar-tab.lm-mod-hidden {
  display: none !important;
}

.lm-TabBar-addButton.lm-mod-hidden {
  display: none !important;
}

.lm-TabBar.lm-mod-dragging .lm-TabBar-tab {
  position: relative;
}

.lm-TabBar.lm-mod-dragging[data-orientation='horizontal'] .lm-TabBar-tab {
  left: 0;
  transition: left 150ms ease;
}

.lm-TabBar.lm-mod-dragging[data-orientation='vertical'] .lm-TabBar-tab {
  top: 0;
  transition: top 150ms ease;
}

.lm-TabBar.lm-mod-dragging .lm-TabBar-tab.lm-mod-dragging {
  transition: none;
}

.lm-TabBar-tabLabel .lm-TabBar-tabInput {
  user-select: all;
  width: 100%;
  box-sizing: border-box;
  background: inherit;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-TabPanel-tabBar {
  z-index: 1;
}

.lm-TabPanel-stackedPanel {
  z-index: 0;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Collapse {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.jp-Collapse-header {
  padding: 1px 12px;
  background-color: var(--jp-layout-color1);
  border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
  color: var(--jp-ui-font-color1);
  cursor: pointer;
  display: flex;
  align-items: center;
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  text-transform: uppercase;
  user-select: none;
}

.jp-Collapser-icon {
  height: 16px;
}

.jp-Collapse-header-collapsed .jp-Collapser-icon {
  transform: rotate(-90deg);
  margin: auto 0;
}

.jp-Collapser-title {
  line-height: 25px;
}

.jp-Collapse-contents {
  padding: 0 12px;
  background-color: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  overflow: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/* This file was auto-generated by ensureUiComponents() in @jupyterlab/buildutils */

/**
 * (DEPRECATED) Support for consuming icons as CSS background images
 */

/* Icons urls */

:root {
  --jp-icon-add-above: url();
  --jp-icon-add-below: url();
  --jp-icon-add: url();
  --jp-icon-bell: url();
  --jp-icon-bug-dot: url();
  --jp-icon-bug: url();
  --jp-icon-build: url();
  --jp-icon-caret-down-empty-thin: url();
  --jp-icon-caret-down-empty: url();
  --jp-icon-caret-down: url();
  --jp-icon-caret-left: url();
  --jp-icon-caret-right: url();
  --jp-icon-caret-up-empty-thin: url();
  --jp-icon-caret-up: url();
  --jp-icon-case-sensitive: url();
  --jp-icon-check: url();
  --jp-icon-circle-empty: url();
  --jp-icon-circle: url();
  --jp-icon-clear: url();
  --jp-icon-close: url();
  --jp-icon-code-check: url();
  --jp-icon-code: url();
  --jp-icon-collapse-all: url();
  --jp-icon-console: url();
  --jp-icon-copy: url();
  --jp-icon-copyright: url();
  --jp-icon-cut: url();
  --jp-icon-delete: url();
  --jp-icon-download: url();
  --jp-icon-duplicate: url();
  --jp-icon-edit: url();
  --jp-icon-ellipses: url();
  --jp-icon-error: url();
  --jp-icon-expand-all: url();
  --jp-icon-extension: url();
  --jp-icon-fast-forward: url();
  --jp-icon-file-upload: url();
  --jp-icon-file: url();
  --jp-icon-filter-dot: url();
  --jp-icon-filter-list: url();
  --jp-icon-filter: url();
  --jp-icon-folder-favorite: url();
  --jp-icon-folder: url();
  --jp-icon-home: url();
  --jp-icon-html5: url();
  --jp-icon-image: url();
  --jp-icon-info: url();
  --jp-icon-inspector: url();
  --jp-icon-json: url();
  --jp-icon-julia: url();
  --jp-icon-jupyter-favicon: url();
  --jp-icon-jupyter: url();
  --jp-icon-jupyterlab-wordmark: url();
  --jp-icon-kernel: url();
  --jp-icon-keyboard: url();
  --jp-icon-launch: url();
  --jp-icon-launcher: url();
  --jp-icon-line-form: url();
  --jp-icon-link: url();
  --jp-icon-list: url();
  --jp-icon-markdown: url();
  --jp-icon-move-down: url();
  --jp-icon-move-up: url();
  --jp-icon-new-folder: url();
  --jp-icon-not-trusted: url();
  --jp-icon-notebook: url();
  --jp-icon-numbering: url();
  --jp-icon-offline-bolt: url();
  --jp-icon-palette: url();
  --jp-icon-paste: url();
  --jp-icon-pdf: url();
  --jp-icon-python: url();
  --jp-icon-r-kernel: url();
  --jp-icon-react: url();
  --jp-icon-redo: url();
  --jp-icon-refresh: url();
  --jp-icon-regex: url();
  --jp-icon-run: url();
  --jp-icon-running: url();
  --jp-icon-save: url();
  --jp-icon-search: url();
  --jp-icon-settings: url();
  --jp-icon-share: url();
  --jp-icon-spreadsheet: url();
  --jp-icon-stop: url();
  --jp-icon-tab: url();
  --jp-icon-table-rows: url();
  --jp-icon-tag: url();
  --jp-icon-terminal: url();
  --jp-icon-text-editor: url();
  --jp-icon-toc: url();
  --jp-icon-tree-view: url();
  --jp-icon-trusted: url();
  --jp-icon-undo: url();
  --jp-icon-user: url();
  --jp-icon-users: url();
  --jp-icon-vega: url();
  --jp-icon-word: url();
  --jp-icon-yaml: url();
}

/* Icon CSS class declarations */

.jp-AddAboveIcon {
  background-image: var(--jp-icon-add-above);
}

.jp-AddBelowIcon {
  background-image: var(--jp-icon-add-below);
}

.jp-AddIcon {
  background-image: var(--jp-icon-add);
}

.jp-BellIcon {
  background-image: var(--jp-icon-bell);
}

.jp-BugDotIcon {
  background-image: var(--jp-icon-bug-dot);
}

.jp-BugIcon {
  background-image: var(--jp-icon-bug);
}

.jp-BuildIcon {
  background-image: var(--jp-icon-build);
}

.jp-CaretDownEmptyIcon {
  background-image: var(--jp-icon-caret-down-empty);
}

.jp-CaretDownEmptyThinIcon {
  background-image: var(--jp-icon-caret-down-empty-thin);
}

.jp-CaretDownIcon {
  background-image: var(--jp-icon-caret-down);
}

.jp-CaretLeftIcon {
  background-image: var(--jp-icon-caret-left);
}

.jp-CaretRightIcon {
  background-image: var(--jp-icon-caret-right);
}

.jp-CaretUpEmptyThinIcon {
  background-image: var(--jp-icon-caret-up-empty-thin);
}

.jp-CaretUpIcon {
  background-image: var(--jp-icon-caret-up);
}

.jp-CaseSensitiveIcon {
  background-image: var(--jp-icon-case-sensitive);
}

.jp-CheckIcon {
  background-image: var(--jp-icon-check);
}

.jp-CircleEmptyIcon {
  background-image: var(--jp-icon-circle-empty);
}

.jp-CircleIcon {
  background-image: var(--jp-icon-circle);
}

.jp-ClearIcon {
  background-image: var(--jp-icon-clear);
}

.jp-CloseIcon {
  background-image: var(--jp-icon-close);
}

.jp-CodeCheckIcon {
  background-image: var(--jp-icon-code-check);
}

.jp-CodeIcon {
  background-image: var(--jp-icon-code);
}

.jp-CollapseAllIcon {
  background-image: var(--jp-icon-collapse-all);
}

.jp-ConsoleIcon {
  background-image: var(--jp-icon-console);
}

.jp-CopyIcon {
  background-image: var(--jp-icon-copy);
}

.jp-CopyrightIcon {
  background-image: var(--jp-icon-copyright);
}

.jp-CutIcon {
  background-image: var(--jp-icon-cut);
}

.jp-DeleteIcon {
  background-image: var(--jp-icon-delete);
}

.jp-DownloadIcon {
  background-image: var(--jp-icon-download);
}

.jp-DuplicateIcon {
  background-image: var(--jp-icon-duplicate);
}

.jp-EditIcon {
  background-image: var(--jp-icon-edit);
}

.jp-EllipsesIcon {
  background-image: var(--jp-icon-ellipses);
}

.jp-ErrorIcon {
  background-image: var(--jp-icon-error);
}

.jp-ExpandAllIcon {
  background-image: var(--jp-icon-expand-all);
}

.jp-ExtensionIcon {
  background-image: var(--jp-icon-extension);
}

.jp-FastForwardIcon {
  background-image: var(--jp-icon-fast-forward);
}

.jp-FileIcon {
  background-image: var(--jp-icon-file);
}

.jp-FileUploadIcon {
  background-image: var(--jp-icon-file-upload);
}

.jp-FilterDotIcon {
  background-image: var(--jp-icon-filter-dot);
}

.jp-FilterIcon {
  background-image: var(--jp-icon-filter);
}

.jp-FilterListIcon {
  background-image: var(--jp-icon-filter-list);
}

.jp-FolderFavoriteIcon {
  background-image: var(--jp-icon-folder-favorite);
}

.jp-FolderIcon {
  background-image: var(--jp-icon-folder);
}

.jp-HomeIcon {
  background-image: var(--jp-icon-home);
}

.jp-Html5Icon {
  background-image: var(--jp-icon-html5);
}

.jp-ImageIcon {
  background-image: var(--jp-icon-image);
}

.jp-InfoIcon {
  background-image: var(--jp-icon-info);
}

.jp-InspectorIcon {
  background-image: var(--jp-icon-inspector);
}

.jp-JsonIcon {
  background-image: var(--jp-icon-json);
}

.jp-JuliaIcon {
  background-image: var(--jp-icon-julia);
}

.jp-JupyterFaviconIcon {
  background-image: var(--jp-icon-jupyter-favicon);
}

.jp-JupyterIcon {
  background-image: var(--jp-icon-jupyter);
}

.jp-JupyterlabWordmarkIcon {
  background-image: var(--jp-icon-jupyterlab-wordmark);
}

.jp-KernelIcon {
  background-image: var(--jp-icon-kernel);
}

.jp-KeyboardIcon {
  background-image: var(--jp-icon-keyboard);
}

.jp-LaunchIcon {
  background-image: var(--jp-icon-launch);
}

.jp-LauncherIcon {
  background-image: var(--jp-icon-launcher);
}

.jp-LineFormIcon {
  background-image: var(--jp-icon-line-form);
}

.jp-LinkIcon {
  background-image: var(--jp-icon-link);
}

.jp-ListIcon {
  background-image: var(--jp-icon-list);
}

.jp-MarkdownIcon {
  background-image: var(--jp-icon-markdown);
}

.jp-MoveDownIcon {
  background-image: var(--jp-icon-move-down);
}

.jp-MoveUpIcon {
  background-image: var(--jp-icon-move-up);
}

.jp-NewFolderIcon {
  background-image: var(--jp-icon-new-folder);
}

.jp-NotTrustedIcon {
  background-image: var(--jp-icon-not-trusted);
}

.jp-NotebookIcon {
  background-image: var(--jp-icon-notebook);
}

.jp-NumberingIcon {
  background-image: var(--jp-icon-numbering);
}

.jp-OfflineBoltIcon {
  background-image: var(--jp-icon-offline-bolt);
}

.jp-PaletteIcon {
  background-image: var(--jp-icon-palette);
}

.jp-PasteIcon {
  background-image: var(--jp-icon-paste);
}

.jp-PdfIcon {
  background-image: var(--jp-icon-pdf);
}

.jp-PythonIcon {
  background-image: var(--jp-icon-python);
}

.jp-RKernelIcon {
  background-image: var(--jp-icon-r-kernel);
}

.jp-ReactIcon {
  background-image: var(--jp-icon-react);
}

.jp-RedoIcon {
  background-image: var(--jp-icon-redo);
}

.jp-RefreshIcon {
  background-image: var(--jp-icon-refresh);
}

.jp-RegexIcon {
  background-image: var(--jp-icon-regex);
}

.jp-RunIcon {
  background-image: var(--jp-icon-run);
}

.jp-RunningIcon {
  background-image: var(--jp-icon-running);
}

.jp-SaveIcon {
  background-image: var(--jp-icon-save);
}

.jp-SearchIcon {
  background-image: var(--jp-icon-search);
}

.jp-SettingsIcon {
  background-image: var(--jp-icon-settings);
}

.jp-ShareIcon {
  background-image: var(--jp-icon-share);
}

.jp-SpreadsheetIcon {
  background-image: var(--jp-icon-spreadsheet);
}

.jp-StopIcon {
  background-image: var(--jp-icon-stop);
}

.jp-TabIcon {
  background-image: var(--jp-icon-tab);
}

.jp-TableRowsIcon {
  background-image: var(--jp-icon-table-rows);
}

.jp-TagIcon {
  background-image: var(--jp-icon-tag);
}

.jp-TerminalIcon {
  background-image: var(--jp-icon-terminal);
}

.jp-TextEditorIcon {
  background-image: var(--jp-icon-text-editor);
}

.jp-TocIcon {
  background-image: var(--jp-icon-toc);
}

.jp-TreeViewIcon {
  background-image: var(--jp-icon-tree-view);
}

.jp-TrustedIcon {
  background-image: var(--jp-icon-trusted);
}

.jp-UndoIcon {
  background-image: var(--jp-icon-undo);
}

.jp-UserIcon {
  background-image: var(--jp-icon-user);
}

.jp-UsersIcon {
  background-image: var(--jp-icon-users);
}

.jp-VegaIcon {
  background-image: var(--jp-icon-vega);
}

.jp-WordIcon {
  background-image: var(--jp-icon-word);
}

.jp-YamlIcon {
  background-image: var(--jp-icon-yaml);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * (DEPRECATED) Support for consuming icons as CSS background images
 */

.jp-Icon,
.jp-MaterialIcon {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px;
  min-width: 16px;
  min-height: 16px;
}

.jp-Icon-cover {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/**
 * (DEPRECATED) Support for specific CSS icon sizes
 */

.jp-Icon-16 {
  background-size: 16px;
  min-width: 16px;
  min-height: 16px;
}

.jp-Icon-18 {
  background-size: 18px;
  min-width: 18px;
  min-height: 18px;
}

.jp-Icon-20 {
  background-size: 20px;
  min-width: 20px;
  min-height: 20px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.lm-TabBar .lm-TabBar-addButton {
  align-items: center;
  display: flex;
  padding: 4px;
  padding-bottom: 5px;
  margin-right: 1px;
  background-color: var(--jp-layout-color2);
}

.lm-TabBar .lm-TabBar-addButton:hover {
  background-color: var(--jp-layout-color1);
}

.lm-DockPanel-tabBar .lm-TabBar-tab {
  width: var(--jp-private-horizontal-tab-width);
}

.lm-DockPanel-tabBar .lm-TabBar-content {
  flex: unset;
}

.lm-DockPanel-tabBar[data-orientation='horizontal'] {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * Support for icons as inline SVG HTMLElements
 */

/* recolor the primary elements of an icon */
.jp-icon0[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon1[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon2[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon3[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon4[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon0[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon1[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon2[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon3[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon4[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/* recolor the accent elements of an icon */
.jp-icon-accent0[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-accent1[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-accent2[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-accent3[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-accent4[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-accent0[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-accent1[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-accent2[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-accent3[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-accent4[stroke] {
  stroke: var(--jp-layout-color4);
}

/* set the color of an icon to transparent */
.jp-icon-none[fill] {
  fill: none;
}

.jp-icon-none[stroke] {
  stroke: none;
}

/* brand icon colors. Same for light and dark */
.jp-icon-brand0[fill] {
  fill: var(--jp-brand-color0);
}

.jp-icon-brand1[fill] {
  fill: var(--jp-brand-color1);
}

.jp-icon-brand2[fill] {
  fill: var(--jp-brand-color2);
}

.jp-icon-brand3[fill] {
  fill: var(--jp-brand-color3);
}

.jp-icon-brand4[fill] {
  fill: var(--jp-brand-color4);
}

.jp-icon-brand0[stroke] {
  stroke: var(--jp-brand-color0);
}

.jp-icon-brand1[stroke] {
  stroke: var(--jp-brand-color1);
}

.jp-icon-brand2[stroke] {
  stroke: var(--jp-brand-color2);
}

.jp-icon-brand3[stroke] {
  stroke: var(--jp-brand-color3);
}

.jp-icon-brand4[stroke] {
  stroke: var(--jp-brand-color4);
}

/* warn icon colors. Same for light and dark */
.jp-icon-warn0[fill] {
  fill: var(--jp-warn-color0);
}

.jp-icon-warn1[fill] {
  fill: var(--jp-warn-color1);
}

.jp-icon-warn2[fill] {
  fill: var(--jp-warn-color2);
}

.jp-icon-warn3[fill] {
  fill: var(--jp-warn-color3);
}

.jp-icon-warn0[stroke] {
  stroke: var(--jp-warn-color0);
}

.jp-icon-warn1[stroke] {
  stroke: var(--jp-warn-color1);
}

.jp-icon-warn2[stroke] {
  stroke: var(--jp-warn-color2);
}

.jp-icon-warn3[stroke] {
  stroke: var(--jp-warn-color3);
}

/* icon colors that contrast well with each other and most backgrounds */
.jp-icon-contrast0[fill] {
  fill: var(--jp-icon-contrast-color0);
}

.jp-icon-contrast1[fill] {
  fill: var(--jp-icon-contrast-color1);
}

.jp-icon-contrast2[fill] {
  fill: var(--jp-icon-contrast-color2);
}

.jp-icon-contrast3[fill] {
  fill: var(--jp-icon-contrast-color3);
}

.jp-icon-contrast0[stroke] {
  stroke: var(--jp-icon-contrast-color0);
}

.jp-icon-contrast1[stroke] {
  stroke: var(--jp-icon-contrast-color1);
}

.jp-icon-contrast2[stroke] {
  stroke: var(--jp-icon-contrast-color2);
}

.jp-icon-contrast3[stroke] {
  stroke: var(--jp-icon-contrast-color3);
}

.jp-icon-dot[fill] {
  fill: var(--jp-warn-color0);
}

.jp-jupyter-icon-color[fill] {
  fill: var(--jp-jupyter-icon-color, var(--jp-warn-color0));
}

.jp-notebook-icon-color[fill] {
  fill: var(--jp-notebook-icon-color, var(--jp-warn-color0));
}

.jp-json-icon-color[fill] {
  fill: var(--jp-json-icon-color, var(--jp-warn-color1));
}

.jp-console-icon-color[fill] {
  fill: var(--jp-console-icon-color, white);
}

.jp-console-icon-background-color[fill] {
  fill: var(--jp-console-icon-background-color, var(--jp-brand-color1));
}

.jp-terminal-icon-color[fill] {
  fill: var(--jp-terminal-icon-color, var(--jp-layout-color2));
}

.jp-terminal-icon-background-color[fill] {
  fill: var(
    --jp-terminal-icon-background-color,
    var(--jp-inverse-layout-color2)
  );
}

.jp-text-editor-icon-color[fill] {
  fill: var(--jp-text-editor-icon-color, var(--jp-inverse-layout-color3));
}

.jp-inspector-icon-color[fill] {
  fill: var(--jp-inspector-icon-color, var(--jp-inverse-layout-color3));
}

/* CSS for icons in selected filebrowser listing items */
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable[fill] {
  fill: #fff;
}

.jp-DirListing-item.jp-mod-selected .jp-icon-selectable-inverse[fill] {
  fill: var(--jp-brand-color1);
}

/* stylelint-disable selector-max-class, selector-max-compound-selectors */

/**
* TODO: come up with non css-hack solution for showing the busy icon on top
*  of the close icon
* CSS for complex behavior of close icon of tabs in the main area tabbar
*/
.lm-DockPanel-tabBar
  .lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
  > .lm-TabBar-tabCloseIcon
  > :not(:hover)
  > .jp-icon3[fill] {
  fill: none;
}

.lm-DockPanel-tabBar
  .lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
  > .lm-TabBar-tabCloseIcon
  > :not(:hover)
  > .jp-icon-busy[fill] {
  fill: var(--jp-inverse-layout-color3);
}

/* stylelint-enable selector-max-class, selector-max-compound-selectors */

/* CSS for icons in status bar */
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable[fill] {
  fill: #fff;
}

#jp-main-statusbar .jp-mod-selected .jp-icon-selectable-inverse[fill] {
  fill: var(--jp-brand-color1);
}

/* special handling for splash icon CSS. While the theme CSS reloads during
   splash, the splash icon can loose theming. To prevent that, we set a
   default for its color variable */
:root {
  --jp-warn-color0: var(--md-orange-700);
}

/* not sure what to do with this one, used in filebrowser listing */
.jp-DragIcon {
  margin-right: 4px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/**
 * Support for alt colors for icons as inline SVG HTMLElements
 */

/* alt recolor the primary elements of an icon */
.jp-icon-alt .jp-icon0[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-alt .jp-icon1[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-alt .jp-icon2[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-alt .jp-icon3[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-alt .jp-icon4[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-alt .jp-icon0[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-alt .jp-icon1[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-alt .jp-icon2[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-alt .jp-icon3[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-alt .jp-icon4[stroke] {
  stroke: var(--jp-layout-color4);
}

/* alt recolor the accent elements of an icon */
.jp-icon-alt .jp-icon-accent0[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-alt .jp-icon-accent1[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-alt .jp-icon-accent2[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-alt .jp-icon-accent3[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-alt .jp-icon-accent4[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-alt .jp-icon-accent0[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-alt .jp-icon-accent1[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-alt .jp-icon-accent2[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-alt .jp-icon-accent3[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-alt .jp-icon-accent4[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-icon-hoverShow:not(:hover) .jp-icon-hoverShow-content {
  display: none !important;
}

/**
 * Support for hover colors for icons as inline SVG HTMLElements
 */

/**
 * regular colors
 */

/* recolor the primary elements of an icon */
.jp-icon-hover :hover .jp-icon0-hover[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-hover :hover .jp-icon1-hover[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-hover :hover .jp-icon2-hover[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-hover :hover .jp-icon3-hover[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-hover :hover .jp-icon4-hover[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-hover :hover .jp-icon0-hover[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-hover :hover .jp-icon1-hover[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-hover :hover .jp-icon2-hover[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-hover :hover .jp-icon3-hover[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-hover :hover .jp-icon4-hover[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/* recolor the accent elements of an icon */
.jp-icon-hover :hover .jp-icon-accent0-hover[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-hover :hover .jp-icon-accent1-hover[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-hover :hover .jp-icon-accent2-hover[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-hover :hover .jp-icon-accent3-hover[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-hover :hover .jp-icon-accent4-hover[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-hover :hover .jp-icon-accent0-hover[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-hover :hover .jp-icon-accent1-hover[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-hover :hover .jp-icon-accent2-hover[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-hover :hover .jp-icon-accent3-hover[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-hover :hover .jp-icon-accent4-hover[stroke] {
  stroke: var(--jp-layout-color4);
}

/* set the color of an icon to transparent */
.jp-icon-hover :hover .jp-icon-none-hover[fill] {
  fill: none;
}

.jp-icon-hover :hover .jp-icon-none-hover[stroke] {
  stroke: none;
}

/**
 * inverse colors
 */

/* inverse recolor the primary elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[fill] {
  fill: var(--jp-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[fill] {
  fill: var(--jp-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[fill] {
  fill: var(--jp-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[fill] {
  fill: var(--jp-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[fill] {
  fill: var(--jp-layout-color4);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[stroke] {
  stroke: var(--jp-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[stroke] {
  stroke: var(--jp-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[stroke] {
  stroke: var(--jp-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[stroke] {
  stroke: var(--jp-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[stroke] {
  stroke: var(--jp-layout-color4);
}

/* inverse recolor the accent elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[fill] {
  fill: var(--jp-inverse-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[fill] {
  fill: var(--jp-inverse-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[fill] {
  fill: var(--jp-inverse-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[fill] {
  fill: var(--jp-inverse-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[fill] {
  fill: var(--jp-inverse-layout-color4);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[stroke] {
  stroke: var(--jp-inverse-layout-color0);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[stroke] {
  stroke: var(--jp-inverse-layout-color1);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[stroke] {
  stroke: var(--jp-inverse-layout-color2);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[stroke] {
  stroke: var(--jp-inverse-layout-color3);
}

.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[stroke] {
  stroke: var(--jp-inverse-layout-color4);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-IFrame {
  width: 100%;
  height: 100%;
}

.jp-IFrame > iframe {
  border: none;
}

/*
When drag events occur, `lm-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-IFrame {
  position: relative;
}

body.lm-mod-override-cursor .jp-IFrame::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-HoverBox {
  position: fixed;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-FormGroup-content fieldset {
  border: none;
  padding: 0;
  min-width: 0;
  width: 100%;
}

/* stylelint-disable selector-max-type */

.jp-FormGroup-content fieldset .jp-inputFieldWrapper input,
.jp-FormGroup-content fieldset .jp-inputFieldWrapper select,
.jp-FormGroup-content fieldset .jp-inputFieldWrapper textarea {
  font-size: var(--jp-content-font-size2);
  border-color: var(--jp-input-border-color);
  border-style: solid;
  border-radius: var(--jp-border-radius);
  border-width: 1px;
  padding: 6px 8px;
  background: none;
  color: var(--jp-ui-font-color0);
  height: inherit;
}

.jp-FormGroup-content fieldset input[type='checkbox'] {
  position: relative;
  top: 2px;
  margin-left: 0;
}

.jp-FormGroup-content button.jp-mod-styled {
  cursor: pointer;
}

.jp-FormGroup-content .checkbox label {
  cursor: pointer;
  font-size: var(--jp-content-font-size1);
}

.jp-FormGroup-content .jp-root > fieldset > legend {
  display: none;
}

.jp-FormGroup-content .jp-root > fieldset > p {
  display: none;
}

/** copy of `input.jp-mod-styled:focus` style */
.jp-FormGroup-content fieldset input:focus,
.jp-FormGroup-content fieldset select:focus {
  -moz-outline-radius: unset;
  outline: var(--jp-border-width) solid var(--md-blue-500);
  outline-offset: -1px;
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-FormGroup-content fieldset input:hover:not(:focus),
.jp-FormGroup-content fieldset select:hover:not(:focus) {
  background-color: var(--jp-border-color2);
}

/* stylelint-enable selector-max-type */

.jp-FormGroup-content .checkbox .field-description {
  /* Disable default description field for checkbox:
   because other widgets do not have description fields,
   we add descriptions to each widget on the field level.
  */
  display: none;
}

.jp-FormGroup-content #root__description {
  display: none;
}

.jp-FormGroup-content .jp-modifiedIndicator {
  width: 5px;
  background-color: var(--jp-brand-color2);
  margin-top: 0;
  margin-left: calc(var(--jp-private-settingeditor-modifier-indent) * -1);
  flex-shrink: 0;
}

.jp-FormGroup-content .jp-modifiedIndicator.jp-errorIndicator {
  background-color: var(--jp-error-color0);
  margin-right: 0.5em;
}

/* RJSF ARRAY style */

.jp-arrayFieldWrapper legend {
  font-size: var(--jp-content-font-size2);
  color: var(--jp-ui-font-color0);
  flex-basis: 100%;
  padding: 4px 0;
  font-weight: var(--jp-content-heading-font-weight);
  border-bottom: 1px solid var(--jp-border-color2);
}

.jp-arrayFieldWrapper .field-description {
  padding: 4px 0;
  white-space: pre-wrap;
}

.jp-arrayFieldWrapper .array-item {
  width: 100%;
  border: 1px solid var(--jp-border-color2);
  border-radius: 4px;
  margin: 4px;
}

.jp-ArrayOperations {
  display: flex;
  margin-left: 8px;
}

.jp-ArrayOperationsButton {
  margin: 2px;
}

.jp-ArrayOperationsButton .jp-icon3[fill] {
  fill: var(--jp-ui-font-color0);
}

button.jp-ArrayOperationsButton.jp-mod-styled:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

/* RJSF form validation error */

.jp-FormGroup-content .validationErrors {
  color: var(--jp-error-color0);
}

/* Hide panel level error as duplicated the field level error */
.jp-FormGroup-content .panel.errors {
  display: none;
}

/* RJSF normal content (settings-editor) */

.jp-FormGroup-contentNormal {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.jp-FormGroup-contentNormal .jp-FormGroup-contentItem {
  margin-left: 7px;
  color: var(--jp-ui-font-color0);
}

.jp-FormGroup-contentNormal .jp-FormGroup-description {
  flex-basis: 100%;
  padding: 4px 7px;
}

.jp-FormGroup-contentNormal .jp-FormGroup-default {
  flex-basis: 100%;
  padding: 4px 7px;
}

.jp-FormGroup-contentNormal .jp-FormGroup-fieldLabel {
  font-size: var(--jp-content-font-size1);
  font-weight: normal;
  min-width: 120px;
}

.jp-FormGroup-contentNormal fieldset:not(:first-child) {
  margin-left: 7px;
}

.jp-FormGroup-contentNormal .field-array-of-string .array-item {
  /* Display `jp-ArrayOperations` buttons side-by-side with content except
    for small screens where flex-wrap will place them one below the other.
  */
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.jp-FormGroup-contentNormal .jp-objectFieldWrapper .form-group {
  padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
  margin-top: 2px;
}

/* RJSF compact content (metadata-form) */

.jp-FormGroup-content.jp-FormGroup-contentCompact {
  width: 100%;
}

.jp-FormGroup-contentCompact .form-group {
  display: flex;
  padding: 0.5em 0.2em 0.5em 0;
}

.jp-FormGroup-contentCompact
  .jp-FormGroup-compactTitle
  .jp-FormGroup-description {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color2);
}

.jp-FormGroup-contentCompact .jp-FormGroup-fieldLabel {
  padding-bottom: 0.3em;
}

.jp-FormGroup-contentCompact .jp-inputFieldWrapper .form-control {
  width: 100%;
  box-sizing: border-box;
}

.jp-FormGroup-contentCompact .jp-arrayFieldWrapper .jp-FormGroup-compactTitle {
  padding-bottom: 7px;
}

.jp-FormGroup-contentCompact
  .jp-objectFieldWrapper
  .jp-objectFieldWrapper
  .form-group {
  padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
  margin-top: 2px;
}

.jp-FormGroup-contentCompact ul.error-detail {
  margin-block-start: 0.5em;
  margin-block-end: 0.5em;
  padding-inline-start: 1em;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-SidePanel {
  display: flex;
  flex-direction: column;
  min-width: var(--jp-sidebar-min-width);
  overflow-y: auto;
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);
  font-size: var(--jp-ui-font-size1);
}

.jp-SidePanel-header {
  flex: 0 0 auto;
  display: flex;
  border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  letter-spacing: 1px;
  margin: 0;
  padding: 2px;
  text-transform: uppercase;
}

.jp-SidePanel-toolbar {
  flex: 0 0 auto;
}

.jp-SidePanel-content {
  flex: 1 1 auto;
}

.jp-SidePanel-toolbar,
.jp-AccordionPanel-toolbar {
  height: var(--jp-private-toolbar-height);
}

.jp-SidePanel-toolbar.jp-Toolbar-micro {
  display: none;
}

.lm-AccordionPanel .jp-AccordionPanel-title {
  box-sizing: border-box;
  line-height: 25px;
  margin: 0;
  display: flex;
  align-items: center;
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  font-size: var(--jp-ui-font-size0);
}

.jp-AccordionPanel-title {
  cursor: pointer;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  text-transform: uppercase;
}

.lm-AccordionPanel[data-orientation='horizontal'] > .jp-AccordionPanel-title {
  /* Title is rotated for horizontal accordion panel using CSS */
  display: block;
  transform-origin: top left;
  transform: rotate(-90deg) translate(-100%);
}

.jp-AccordionPanel-title .lm-AccordionPanel-titleLabel {
  user-select: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.jp-AccordionPanel-title .lm-AccordionPanel-titleCollapser {
  transform: rotate(-90deg);
  margin: auto 0;
  height: 16px;
}

.jp-AccordionPanel-title.lm-mod-expanded .lm-AccordionPanel-titleCollapser {
  transform: rotate(0deg);
}

.lm-AccordionPanel .jp-AccordionPanel-toolbar {
  background: none;
  box-shadow: none;
  border: none;
  margin-left: auto;
}

.lm-AccordionPanel .lm-SplitPanel-handle:hover {
  background: var(--jp-layout-color3);
}

.jp-text-truncated {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Spinner {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--jp-layout-color0);
  outline: none;
}

.jp-SpinnerContent {
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 3em;
  height: 3em;
  border-radius: 50%;
  background: var(--jp-brand-color3);
  background: linear-gradient(
    to right,
    #f37626 10%,
    rgba(255, 255, 255, 0) 42%
  );
  position: relative;
  animation: load3 1s infinite linear, fadeIn 1s;
}

.jp-SpinnerContent::before {
  width: 50%;
  height: 50%;
  background: #f37626;
  border-radius: 100% 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
}

.jp-SpinnerContent::after {
  background: var(--jp-layout-color0);
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes load3 {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

button.jp-mod-styled {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  border: none;
  box-sizing: border-box;
  text-align: center;
  line-height: 32px;
  height: 32px;
  padding: 0 12px;
  letter-spacing: 0.8px;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input.jp-mod-styled {
  background: var(--jp-input-background);
  height: 28px;
  box-sizing: border-box;
  border: var(--jp-border-width) solid var(--jp-border-color1);
  padding-left: 7px;
  padding-right: 7px;
  font-size: var(--jp-ui-font-size2);
  color: var(--jp-ui-font-color0);
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type='checkbox'].jp-mod-styled {
  appearance: checkbox;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  height: auto;
}

input.jp-mod-styled:focus {
  border: var(--jp-border-width) solid var(--md-blue-500);
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-select-wrapper {
  display: flex;
  position: relative;
  flex-direction: column;
  padding: 1px;
  background-color: var(--jp-layout-color1);
  box-sizing: border-box;
  margin-bottom: 12px;
}

.jp-select-wrapper:not(.multiple) {
  height: 28px;
}

.jp-select-wrapper.jp-mod-focused select.jp-mod-styled {
  border: var(--jp-border-width) solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
  background-color: var(--jp-input-active-background);
}

select.jp-mod-styled:hover {
  cursor: pointer;
  color: var(--jp-ui-font-color0);
  background-color: var(--jp-input-hover-background);
  box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5);
}

select.jp-mod-styled {
  flex: 1 1 auto;
  width: 100%;
  font-size: var(--jp-ui-font-size2);
  background: var(--jp-input-background);
  color: var(--jp-ui-font-color0);
  padding: 0 25px 0 8px;
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  border-radius: 0;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

select.jp-mod-styled:not([multiple]) {
  height: 32px;
}

select.jp-mod-styled[multiple] {
  max-height: 200px;
  overflow-y: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-switch {
  display: flex;
  align-items: center;
  padding-left: 4px;
  padding-right: 4px;
  font-size: var(--jp-ui-font-size1);
  background-color: transparent;
  color: var(--jp-ui-font-color1);
  border: none;
  height: 20px;
}

.jp-switch:hover {
  background-color: var(--jp-layout-color2);
}

.jp-switch-label {
  margin-right: 5px;
  font-family: var(--jp-ui-font-family);
}

.jp-switch-track {
  cursor: pointer;
  background-color: var(--jp-switch-color, var(--jp-border-color1));
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 34px;
  height: 16px;
  width: 35px;
  position: relative;
}

.jp-switch-track::before {
  content: '';
  position: absolute;
  height: 10px;
  width: 10px;
  margin: 3px;
  left: 0;
  background-color: var(--jp-ui-inverse-font-color1);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 50%;
}

.jp-switch[aria-checked='true'] .jp-switch-track {
  background-color: var(--jp-switch-true-position-color, var(--jp-warn-color0));
}

.jp-switch[aria-checked='true'] .jp-switch-track::before {
  /* track width (35) - margins (3 + 3) - thumb width (10) */
  left: 19px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

:root {
  --jp-private-toolbar-height: calc(
    28px + var(--jp-border-width)
  ); /* leave 28px for content */
}

.jp-Toolbar {
  color: var(--jp-ui-font-color1);
  flex: 0 0 auto;
  display: flex;
  flex-direction: row;
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  background: var(--jp-toolbar-background);
  min-height: var(--jp-toolbar-micro-height);
  padding: 2px;
  z-index: 8;
  overflow-x: hidden;
}

/* Toolbar items */

.jp-Toolbar > .jp-Toolbar-item.jp-Toolbar-spacer {
  flex-grow: 1;
  flex-shrink: 1;
}

.jp-Toolbar-item.jp-Toolbar-kernelStatus {
  display: inline-block;
  width: 32px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
}

.jp-Toolbar > .jp-Toolbar-item {
  flex: 0 0 auto;
  display: flex;
  padding-left: 1px;
  padding-right: 1px;
  font-size: var(--jp-ui-font-size1);
  line-height: var(--jp-private-toolbar-height);
  height: 100%;
}

/* Toolbar buttons */

/* This is the div we use to wrap the react component into a Widget */
div.jp-ToolbarButton {
  color: transparent;
  border: none;
  box-sizing: border-box;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0;
  margin: 0;
}

button.jp-ToolbarButtonComponent {
  background: var(--jp-layout-color1);
  border: none;
  box-sizing: border-box;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0 6px;
  margin: 0;
  height: 24px;
  border-radius: var(--jp-border-radius);
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 14px;
  min-width: unset;
  min-height: unset;
}

button.jp-ToolbarButtonComponent:disabled {
  opacity: 0.4;
}

button.jp-ToolbarButtonComponent > span {
  padding: 0;
  flex: 0 0 auto;
}

button.jp-ToolbarButtonComponent .jp-ToolbarButtonComponent-label {
  font-size: var(--jp-ui-font-size1);
  line-height: 100%;
  padding-left: 2px;
  color: var(--jp-ui-font-color1);
  font-family: var(--jp-ui-font-family);
}

#jp-main-dock-panel[data-mode='single-document']
  .jp-MainAreaWidget
  > .jp-Toolbar.jp-Toolbar-micro {
  padding: 0;
  min-height: 0;
}

#jp-main-dock-panel[data-mode='single-document']
  .jp-MainAreaWidget
  > .jp-Toolbar {
  border: none;
  box-shadow: none;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-WindowedPanel-outer {
  position: relative;
  overflow-y: auto;
}

.jp-WindowedPanel-inner {
  position: relative;
}

.jp-WindowedPanel-window {
  position: absolute;
  left: 0;
  right: 0;
  overflow: visible;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/* Sibling imports */

body {
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
}

/* Disable native link decoration styles everywhere outside of dialog boxes */
a {
  text-decoration: unset;
  color: unset;
}

a:hover {
  text-decoration: unset;
  color: unset;
}

/* Accessibility for links inside dialog box text */
.jp-Dialog-content a {
  text-decoration: revert;
  color: var(--jp-content-link-color);
}

.jp-Dialog-content a:hover {
  text-decoration: revert;
}

/* Styles for ui-components */
.jp-Button {
  color: var(--jp-ui-font-color2);
  border-radius: var(--jp-border-radius);
  padding: 0 12px;
  font-size: var(--jp-ui-font-size1);

  /* Copy from blueprint 3 */
  display: inline-flex;
  flex-direction: row;
  border: none;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  text-align: left;
  vertical-align: middle;
  min-height: 30px;
  min-width: 30px;
}

.jp-Button:disabled {
  cursor: not-allowed;
}

.jp-Button:empty {
  padding: 0 !important;
}

.jp-Button.jp-mod-small {
  min-height: 24px;
  min-width: 24px;
  font-size: 12px;
  padding: 0 7px;
}

/* Use our own theme for hover styles */
.jp-Button.jp-mod-minimal:hover {
  background-color: var(--jp-layout-color2);
}

.jp-Button.jp-mod-minimal {
  background: none;
}

.jp-InputGroup {
  display: block;
  position: relative;
}

.jp-InputGroup input {
  box-sizing: border-box;
  border: none;
  border-radius: 0;
  background-color: transparent;
  color: var(--jp-ui-font-color0);
  box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
  padding-bottom: 0;
  padding-top: 0;
  padding-left: 10px;
  padding-right: 28px;
  position: relative;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 14px;
  font-weight: 400;
  height: 30px;
  line-height: 30px;
  outline: none;
  vertical-align: middle;
}

.jp-InputGroup input:focus {
  box-shadow: inset 0 0 0 var(--jp-border-width)
      var(--jp-input-active-box-shadow-color),
    inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}

.jp-InputGroup input:disabled {
  cursor: not-allowed;
  resize: block;
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color2);
}

.jp-InputGroup input:disabled ~ span {
  cursor: not-allowed;
  color: var(--jp-ui-font-color2);
}

.jp-InputGroup input::placeholder,
input::placeholder {
  color: var(--jp-ui-font-color2);
}

.jp-InputGroupAction {
  position: absolute;
  bottom: 1px;
  right: 0;
  padding: 6px;
}

.jp-HTMLSelect.jp-DefaultStyle select {
  background-color: initial;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: var(--jp-ui-font-color0);
  display: block;
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  height: 24px;
  line-height: 14px;
  padding: 0 25px 0 10px;
  text-align: left;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.jp-HTMLSelect.jp-DefaultStyle select:disabled {
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color2);
  cursor: not-allowed;
  resize: block;
}

.jp-HTMLSelect.jp-DefaultStyle select:disabled ~ span {
  cursor: not-allowed;
}

/* Use our own theme for hover and option styles */
/* stylelint-disable-next-line selector-max-type */
.jp-HTMLSelect.jp-DefaultStyle select:hover,
.jp-HTMLSelect.jp-DefaultStyle select > option {
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color0);
}

select {
  box-sizing: border-box;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-StatusBar-Widget {
  display: flex;
  align-items: center;
  background: var(--jp-layout-color2);
  min-height: var(--jp-statusbar-height);
  justify-content: space-between;
  padding: 0 10px;
}

.jp-StatusBar-Left {
  display: flex;
  align-items: center;
  flex-direction: row;
}

.jp-StatusBar-Middle {
  display: flex;
  align-items: center;
}

.jp-StatusBar-Right {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
}

.jp-StatusBar-Item {
  max-height: var(--jp-statusbar-height);
  margin: 0 2px;
  height: var(--jp-statusbar-height);
  white-space: nowrap;
  text-overflow: ellipsis;
  color: var(--jp-ui-font-color1);
  padding: 0 6px;
}

.jp-mod-highlighted:hover {
  background-color: var(--jp-layout-color3);
}

.jp-mod-clicked {
  background-color: var(--jp-brand-color1);
}

.jp-mod-clicked:hover {
  background-color: var(--jp-brand-color0);
}

.jp-mod-clicked .jp-StatusBar-TextItem {
  color: var(--jp-ui-inverse-font-color1);
}

.jp-StatusBar-HoverItem {
  box-shadow: '0px 4px 4px rgba(0, 0, 0, 0.25)';
}

.jp-StatusBar-TextItem {
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  line-height: 24px;
  color: var(--jp-ui-font-color1);
}

.jp-StatusBar-GroupItem {
  display: flex;
  align-items: center;
  flex-direction: row;
}

.jp-Statusbar-ProgressCircle svg {
  display: block;
  margin: 0 auto;
  width: 16px;
  height: 24px;
  align-self: normal;
}

.jp-Statusbar-ProgressCircle path {
  fill: var(--jp-inverse-layout-color3);
}

.jp-Statusbar-ProgressBar-progress-bar {
  height: 10px;
  width: 100px;
  border: solid 0.25px var(--jp-brand-color2);
  border-radius: 3px;
  overflow: hidden;
  align-self: center;
}

.jp-Statusbar-ProgressBar-progress-bar > div {
  background-color: var(--jp-brand-color2);
  background-image: linear-gradient(
    -45deg,
    rgba(255, 255, 255, 0.2) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0.2) 75%,
    transparent 75%,
    transparent
  );
  background-size: 40px 40px;
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 14px;
  color: #fff;
  text-align: center;
  animation: jp-Statusbar-ExecutionTime-progress-bar 2s linear infinite;
}

.jp-Statusbar-ProgressBar-progress-bar p {
  color: var(--jp-ui-font-color1);
  font-family: var(--jp-ui-font-family);
  font-size: var(--jp-ui-font-size1);
  line-height: 10px;
  width: 100px;
}

@keyframes jp-Statusbar-ExecutionTime-progress-bar {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 40px 40px;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-commandpalette-search-height: 28px;
}

/*-----------------------------------------------------------------------------
| Overall styles
|----------------------------------------------------------------------------*/

.lm-CommandPalette {
  padding-bottom: 0;
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);

  /* This is needed so that all font sizing of children done in ems is
   * relative to this base size */
  font-size: var(--jp-ui-font-size1);
}

/*-----------------------------------------------------------------------------
| Modal variant
|----------------------------------------------------------------------------*/

.jp-ModalCommandPalette {
  position: absolute;
  z-index: 10000;
  top: 38px;
  left: 30%;
  margin: 0;
  padding: 4px;
  width: 40%;
  box-shadow: var(--jp-elevation-z4);
  border-radius: 4px;
  background: var(--jp-layout-color0);
}

.jp-ModalCommandPalette .lm-CommandPalette {
  max-height: 40vh;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-close-icon::after {
  display: none;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-header {
  display: none;
}

.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-item {
  margin-left: 4px;
  margin-right: 4px;
}

.jp-ModalCommandPalette
  .lm-CommandPalette
  .lm-CommandPalette-item.lm-mod-disabled {
  display: none;
}

/*-----------------------------------------------------------------------------
| Search
|----------------------------------------------------------------------------*/

.lm-CommandPalette-search {
  padding: 4px;
  background-color: var(--jp-layout-color1);
  z-index: 2;
}

.lm-CommandPalette-wrapper {
  overflow: overlay;
  padding: 0 9px;
  background-color: var(--jp-input-active-background);
  height: 30px;
  box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
}

.lm-CommandPalette.lm-mod-focused .lm-CommandPalette-wrapper {
  box-shadow: inset 0 0 0 1px var(--jp-input-active-box-shadow-color),
    inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}

.jp-SearchIconGroup {
  color: white;
  background-color: var(--jp-brand-color1);
  position: absolute;
  top: 4px;
  right: 4px;
  padding: 5px 5px 1px;
}

.jp-SearchIconGroup svg {
  height: 20px;
  width: 20px;
}

.jp-SearchIconGroup .jp-icon3[fill] {
  fill: var(--jp-layout-color0);
}

.lm-CommandPalette-input {
  background: transparent;
  width: calc(100% - 18px);
  float: left;
  border: none;
  outline: none;
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  line-height: var(--jp-private-commandpalette-search-height);
}

.lm-CommandPalette-input::-webkit-input-placeholder,
.lm-CommandPalette-input::-moz-placeholder,
.lm-CommandPalette-input:-ms-input-placeholder {
  color: var(--jp-ui-font-color2);
  font-size: var(--jp-ui-font-size1);
}

/*-----------------------------------------------------------------------------
| Results
|----------------------------------------------------------------------------*/

.lm-CommandPalette-header:first-child {
  margin-top: 0;
}

.lm-CommandPalette-header {
  border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
  color: var(--jp-ui-font-color1);
  cursor: pointer;
  display: flex;
  font-size: var(--jp-ui-font-size0);
  font-weight: 600;
  letter-spacing: 1px;
  margin-top: 8px;
  padding: 8px 0 8px 12px;
  text-transform: uppercase;
}

.lm-CommandPalette-header.lm-mod-active {
  background: var(--jp-layout-color2);
}

.lm-CommandPalette-header > mark {
  background-color: transparent;
  font-weight: bold;
  color: var(--jp-ui-font-color1);
}

.lm-CommandPalette-item {
  padding: 4px 12px 4px 4px;
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  font-weight: 400;
  display: flex;
}

.lm-CommandPalette-item.lm-mod-disabled {
  color: var(--jp-ui-font-color2);
}

.lm-CommandPalette-item.lm-mod-active {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.lm-CommandPalette-item.lm-mod-active .lm-CommandPalette-itemLabel > mark {
  color: var(--jp-ui-inverse-font-color0);
}

.lm-CommandPalette-item.lm-mod-active .jp-icon-selectable[fill] {
  fill: var(--jp-layout-color0);
}

.lm-CommandPalette-item.lm-mod-active:hover:not(.lm-mod-disabled) {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.lm-CommandPalette-item:hover:not(.lm-mod-active):not(.lm-mod-disabled) {
  background: var(--jp-layout-color2);
}

.lm-CommandPalette-itemContent {
  overflow: hidden;
}

.lm-CommandPalette-itemLabel > mark {
  color: var(--jp-ui-font-color0);
  background-color: transparent;
  font-weight: bold;
}

.lm-CommandPalette-item.lm-mod-disabled mark {
  color: var(--jp-ui-font-color2);
}

.lm-CommandPalette-item .lm-CommandPalette-itemIcon {
  margin: 0 4px 0 0;
  position: relative;
  width: 16px;
  top: 2px;
  flex: 0 0 auto;
}

.lm-CommandPalette-item.lm-mod-disabled .lm-CommandPalette-itemIcon {
  opacity: 0.6;
}

.lm-CommandPalette-item .lm-CommandPalette-itemShortcut {
  flex: 0 0 auto;
}

.lm-CommandPalette-itemCaption {
  display: none;
}

.lm-CommandPalette-content {
  background-color: var(--jp-layout-color1);
}

.lm-CommandPalette-content:empty::after {
  content: 'No results';
  margin: auto;
  margin-top: 20px;
  width: 100px;
  display: block;
  font-size: var(--jp-ui-font-size2);
  font-family: var(--jp-ui-font-family);
  font-weight: lighter;
}

.lm-CommandPalette-emptyMessage {
  text-align: center;
  margin-top: 24px;
  line-height: 1.32;
  padding: 0 8px;
  color: var(--jp-content-font-color3);
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Dialog {
  position: absolute;
  z-index: 10000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background: var(--jp-dialog-background);
}

.jp-Dialog-content {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  background: var(--jp-layout-color1);
  padding: 24px 24px 12px;
  min-width: 300px;
  min-height: 150px;
  max-width: 1000px;
  max-height: 500px;
  box-sizing: border-box;
  box-shadow: var(--jp-elevation-z20);
  word-wrap: break-word;
  border-radius: var(--jp-border-radius);

  /* This is needed so that all font sizing of children done in ems is
   * relative to this base size */
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color1);
  resize: both;
}

.jp-Dialog-content.jp-Dialog-content-small {
  max-width: 500px;
}

.jp-Dialog-button {
  overflow: visible;
}

button.jp-Dialog-button:focus {
  outline: 1px solid var(--jp-brand-color1);
  outline-offset: 4px;
  -moz-outline-radius: 0;
}

button.jp-Dialog-button:focus::-moz-focus-inner {
  border: 0;
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus,
button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus,
button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
  outline-offset: 4px;
  -moz-outline-radius: 0;
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus {
  outline: 1px solid var(--jp-accept-color-normal, var(--jp-brand-color1));
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus {
  outline: 1px solid var(--jp-warn-color-normal, var(--jp-error-color1));
}

button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
  outline: 1px solid var(--jp-reject-color-normal, var(--md-grey-600));
}

button.jp-Dialog-close-button {
  padding: 0;
  height: 100%;
  min-width: unset;
  min-height: unset;
}

.jp-Dialog-header {
  display: flex;
  justify-content: space-between;
  flex: 0 0 auto;
  padding-bottom: 12px;
  font-size: var(--jp-ui-font-size3);
  font-weight: 400;
  color: var(--jp-ui-font-color1);
}

.jp-Dialog-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  font-size: var(--jp-ui-font-size1);
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  overflow: auto;
}

.jp-Dialog-footer {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  flex: 0 0 auto;
  margin-left: -12px;
  margin-right: -12px;
  padding: 12px;
}

.jp-Dialog-checkbox {
  padding-right: 5px;
}

.jp-Dialog-checkbox > input:focus-visible {
  outline: 1px solid var(--jp-input-active-border-color);
  outline-offset: 1px;
}

.jp-Dialog-spacer {
  flex: 1 1 auto;
}

.jp-Dialog-title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.jp-Dialog-body > .jp-select-wrapper {
  width: 100%;
}

.jp-Dialog-body > button {
  padding: 0 16px;
}

.jp-Dialog-body > label {
  line-height: 1.4;
  color: var(--jp-ui-font-color0);
}

.jp-Dialog-button.jp-mod-styled:not(:last-child) {
  margin-right: 12px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-Input-Boolean-Dialog {
  flex-direction: row-reverse;
  align-items: end;
  width: 100%;
}

.jp-Input-Boolean-Dialog > label {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-MainAreaWidget > :focus {
  outline: none;
}

.jp-MainAreaWidget .jp-MainAreaWidget-error {
  padding: 6px;
}

.jp-MainAreaWidget .jp-MainAreaWidget-error > pre {
  width: auto;
  padding: 10px;
  background: var(--jp-error-color3);
  border: var(--jp-border-width) solid var(--jp-error-color1);
  border-radius: var(--jp-border-radius);
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  white-space: pre-wrap;
  word-wrap: break-word;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/**
 * google-material-color v1.2.6
 * https://github.com/danlevan/google-material-color
 */
:root {
  --md-red-50: #ffebee;
  --md-red-100: #ffcdd2;
  --md-red-200: #ef9a9a;
  --md-red-300: #e57373;
  --md-red-400: #ef5350;
  --md-red-500: #f44336;
  --md-red-600: #e53935;
  --md-red-700: #d32f2f;
  --md-red-800: #c62828;
  --md-red-900: #b71c1c;
  --md-red-A100: #ff8a80;
  --md-red-A200: #ff5252;
  --md-red-A400: #ff1744;
  --md-red-A700: #d50000;
  --md-pink-50: #fce4ec;
  --md-pink-100: #f8bbd0;
  --md-pink-200: #f48fb1;
  --md-pink-300: #f06292;
  --md-pink-400: #ec407a;
  --md-pink-500: #e91e63;
  --md-pink-600: #d81b60;
  --md-pink-700: #c2185b;
  --md-pink-800: #ad1457;
  --md-pink-900: #880e4f;
  --md-pink-A100: #ff80ab;
  --md-pink-A200: #ff4081;
  --md-pink-A400: #f50057;
  --md-pink-A700: #c51162;
  --md-purple-50: #f3e5f5;
  --md-purple-100: #e1bee7;
  --md-purple-200: #ce93d8;
  --md-purple-300: #ba68c8;
  --md-purple-400: #ab47bc;
  --md-purple-500: #9c27b0;
  --md-purple-600: #8e24aa;
  --md-purple-700: #7b1fa2;
  --md-purple-800: #6a1b9a;
  --md-purple-900: #4a148c;
  --md-purple-A100: #ea80fc;
  --md-purple-A200: #e040fb;
  --md-purple-A400: #d500f9;
  --md-purple-A700: #a0f;
  --md-deep-purple-50: #ede7f6;
  --md-deep-purple-100: #d1c4e9;
  --md-deep-purple-200: #b39ddb;
  --md-deep-purple-300: #9575cd;
  --md-deep-purple-400: #7e57c2;
  --md-deep-purple-500: #673ab7;
  --md-deep-purple-600: #5e35b1;
  --md-deep-purple-700: #512da8;
  --md-deep-purple-800: #4527a0;
  --md-deep-purple-900: #311b92;
  --md-deep-purple-A100: #b388ff;
  --md-deep-purple-A200: #7c4dff;
  --md-deep-purple-A400: #651fff;
  --md-deep-purple-A700: #6200ea;
  --md-indigo-50: #e8eaf6;
  --md-indigo-100: #c5cae9;
  --md-indigo-200: #9fa8da;
  --md-indigo-300: #7986cb;
  --md-indigo-400: #5c6bc0;
  --md-indigo-500: #3f51b5;
  --md-indigo-600: #3949ab;
  --md-indigo-700: #303f9f;
  --md-indigo-800: #283593;
  --md-indigo-900: #1a237e;
  --md-indigo-A100: #8c9eff;
  --md-indigo-A200: #536dfe;
  --md-indigo-A400: #3d5afe;
  --md-indigo-A700: #304ffe;
  --md-blue-50: #e3f2fd;
  --md-blue-100: #bbdefb;
  --md-blue-200: #90caf9;
  --md-blue-300: #64b5f6;
  --md-blue-400: #42a5f5;
  --md-blue-500: #2196f3;
  --md-blue-600: #1e88e5;
  --md-blue-700: #1976d2;
  --md-blue-800: #1565c0;
  --md-blue-900: #0d47a1;
  --md-blue-A100: #82b1ff;
  --md-blue-A200: #448aff;
  --md-blue-A400: #2979ff;
  --md-blue-A700: #2962ff;
  --md-light-blue-50: #e1f5fe;
  --md-light-blue-100: #b3e5fc;
  --md-light-blue-200: #81d4fa;
  --md-light-blue-300: #4fc3f7;
  --md-light-blue-400: #29b6f6;
  --md-light-blue-500: #03a9f4;
  --md-light-blue-600: #039be5;
  --md-light-blue-700: #0288d1;
  --md-light-blue-800: #0277bd;
  --md-light-blue-900: #01579b;
  --md-light-blue-A100: #80d8ff;
  --md-light-blue-A200: #40c4ff;
  --md-light-blue-A400: #00b0ff;
  --md-light-blue-A700: #0091ea;
  --md-cyan-50: #e0f7fa;
  --md-cyan-100: #b2ebf2;
  --md-cyan-200: #80deea;
  --md-cyan-300: #4dd0e1;
  --md-cyan-400: #26c6da;
  --md-cyan-500: #00bcd4;
  --md-cyan-600: #00acc1;
  --md-cyan-700: #0097a7;
  --md-cyan-800: #00838f;
  --md-cyan-900: #006064;
  --md-cyan-A100: #84ffff;
  --md-cyan-A200: #18ffff;
  --md-cyan-A400: #00e5ff;
  --md-cyan-A700: #00b8d4;
  --md-teal-50: #e0f2f1;
  --md-teal-100: #b2dfdb;
  --md-teal-200: #80cbc4;
  --md-teal-300: #4db6ac;
  --md-teal-400: #26a69a;
  --md-teal-500: #009688;
  --md-teal-600: #00897b;
  --md-teal-700: #00796b;
  --md-teal-800: #00695c;
  --md-teal-900: #004d40;
  --md-teal-A100: #a7ffeb;
  --md-teal-A200: #64ffda;
  --md-teal-A400: #1de9b6;
  --md-teal-A700: #00bfa5;
  --md-green-50: #e8f5e9;
  --md-green-100: #c8e6c9;
  --md-green-200: #a5d6a7;
  --md-green-300: #81c784;
  --md-green-400: #66bb6a;
  --md-green-500: #4caf50;
  --md-green-600: #43a047;
  --md-green-700: #388e3c;
  --md-green-800: #2e7d32;
  --md-green-900: #1b5e20;
  --md-green-A100: #b9f6ca;
  --md-green-A200: #69f0ae;
  --md-green-A400: #00e676;
  --md-green-A700: #00c853;
  --md-light-green-50: #f1f8e9;
  --md-light-green-100: #dcedc8;
  --md-light-green-200: #c5e1a5;
  --md-light-green-300: #aed581;
  --md-light-green-400: #9ccc65;
  --md-light-green-500: #8bc34a;
  --md-light-green-600: #7cb342;
  --md-light-green-700: #689f38;
  --md-light-green-800: #558b2f;
  --md-light-green-900: #33691e;
  --md-light-green-A100: #ccff90;
  --md-light-green-A200: #b2ff59;
  --md-light-green-A400: #76ff03;
  --md-light-green-A700: #64dd17;
  --md-lime-50: #f9fbe7;
  --md-lime-100: #f0f4c3;
  --md-lime-200: #e6ee9c;
  --md-lime-300: #dce775;
  --md-lime-400: #d4e157;
  --md-lime-500: #cddc39;
  --md-lime-600: #c0ca33;
  --md-lime-700: #afb42b;
  --md-lime-800: #9e9d24;
  --md-lime-900: #827717;
  --md-lime-A100: #f4ff81;
  --md-lime-A200: #eeff41;
  --md-lime-A400: #c6ff00;
  --md-lime-A700: #aeea00;
  --md-yellow-50: #fffde7;
  --md-yellow-100: #fff9c4;
  --md-yellow-200: #fff59d;
  --md-yellow-300: #fff176;
  --md-yellow-400: #ffee58;
  --md-yellow-500: #ffeb3b;
  --md-yellow-600: #fdd835;
  --md-yellow-700: #fbc02d;
  --md-yellow-800: #f9a825;
  --md-yellow-900: #f57f17;
  --md-yellow-A100: #ffff8d;
  --md-yellow-A200: #ff0;
  --md-yellow-A400: #ffea00;
  --md-yellow-A700: #ffd600;
  --md-amber-50: #fff8e1;
  --md-amber-100: #ffecb3;
  --md-amber-200: #ffe082;
  --md-amber-300: #ffd54f;
  --md-amber-400: #ffca28;
  --md-amber-500: #ffc107;
  --md-amber-600: #ffb300;
  --md-amber-700: #ffa000;
  --md-amber-800: #ff8f00;
  --md-amber-900: #ff6f00;
  --md-amber-A100: #ffe57f;
  --md-amber-A200: #ffd740;
  --md-amber-A400: #ffc400;
  --md-amber-A700: #ffab00;
  --md-orange-50: #fff3e0;
  --md-orange-100: #ffe0b2;
  --md-orange-200: #ffcc80;
  --md-orange-300: #ffb74d;
  --md-orange-400: #ffa726;
  --md-orange-500: #ff9800;
  --md-orange-600: #fb8c00;
  --md-orange-700: #f57c00;
  --md-orange-800: #ef6c00;
  --md-orange-900: #e65100;
  --md-orange-A100: #ffd180;
  --md-orange-A200: #ffab40;
  --md-orange-A400: #ff9100;
  --md-orange-A700: #ff6d00;
  --md-deep-orange-50: #fbe9e7;
  --md-deep-orange-100: #ffccbc;
  --md-deep-orange-200: #ffab91;
  --md-deep-orange-300: #ff8a65;
  --md-deep-orange-400: #ff7043;
  --md-deep-orange-500: #ff5722;
  --md-deep-orange-600: #f4511e;
  --md-deep-orange-700: #e64a19;
  --md-deep-orange-800: #d84315;
  --md-deep-orange-900: #bf360c;
  --md-deep-orange-A100: #ff9e80;
  --md-deep-orange-A200: #ff6e40;
  --md-deep-orange-A400: #ff3d00;
  --md-deep-orange-A700: #dd2c00;
  --md-brown-50: #efebe9;
  --md-brown-100: #d7ccc8;
  --md-brown-200: #bcaaa4;
  --md-brown-300: #a1887f;
  --md-brown-400: #8d6e63;
  --md-brown-500: #795548;
  --md-brown-600: #6d4c41;
  --md-brown-700: #5d4037;
  --md-brown-800: #4e342e;
  --md-brown-900: #3e2723;
  --md-grey-50: #fafafa;
  --md-grey-100: #f5f5f5;
  --md-grey-200: #eee;
  --md-grey-300: #e0e0e0;
  --md-grey-400: #bdbdbd;
  --md-grey-500: #9e9e9e;
  --md-grey-600: #757575;
  --md-grey-700: #616161;
  --md-grey-800: #424242;
  --md-grey-900: #212121;
  --md-blue-grey-50: #eceff1;
  --md-blue-grey-100: #cfd8dc;
  --md-blue-grey-200: #b0bec5;
  --md-blue-grey-300: #90a4ae;
  --md-blue-grey-400: #78909c;
  --md-blue-grey-500: #607d8b;
  --md-blue-grey-600: #546e7a;
  --md-blue-grey-700: #455a64;
  --md-blue-grey-800: #37474f;
  --md-blue-grey-900: #263238;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| RenderedText
|----------------------------------------------------------------------------*/

:root {
  /* This is the padding value to fill the gaps between lines containing spans with background color. */
  --jp-private-code-span-padding: calc(
    (var(--jp-code-line-height) - 1) * var(--jp-code-font-size) / 2
  );
}

.jp-RenderedText {
  text-align: left;
  padding-left: var(--jp-code-padding);
  line-height: var(--jp-code-line-height);
  font-family: var(--jp-code-font-family);
}

.jp-RenderedText pre,
.jp-RenderedJavaScript pre,
.jp-RenderedHTMLCommon pre {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-code-font-size);
  border: none;
  margin: 0;
  padding: 0;
}

.jp-RenderedText pre a:link {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

.jp-RenderedText pre a:hover {
  text-decoration: underline;
  color: var(--jp-content-link-color);
}

.jp-RenderedText pre a:visited {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

/* console foregrounds and backgrounds */
.jp-RenderedText pre .ansi-black-fg {
  color: #3e424d;
}

.jp-RenderedText pre .ansi-red-fg {
  color: #e75c58;
}

.jp-RenderedText pre .ansi-green-fg {
  color: #00a250;
}

.jp-RenderedText pre .ansi-yellow-fg {
  color: #ddb62b;
}

.jp-RenderedText pre .ansi-blue-fg {
  color: #208ffb;
}

.jp-RenderedText pre .ansi-magenta-fg {
  color: #d160c4;
}

.jp-RenderedText pre .ansi-cyan-fg {
  color: #60c6c8;
}

.jp-RenderedText pre .ansi-white-fg {
  color: #c5c1b4;
}

.jp-RenderedText pre .ansi-black-bg {
  background-color: #3e424d;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-red-bg {
  background-color: #e75c58;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-green-bg {
  background-color: #00a250;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-yellow-bg {
  background-color: #ddb62b;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-blue-bg {
  background-color: #208ffb;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-magenta-bg {
  background-color: #d160c4;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-cyan-bg {
  background-color: #60c6c8;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-white-bg {
  background-color: #c5c1b4;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-black-intense-fg {
  color: #282c36;
}

.jp-RenderedText pre .ansi-red-intense-fg {
  color: #b22b31;
}

.jp-RenderedText pre .ansi-green-intense-fg {
  color: #007427;
}

.jp-RenderedText pre .ansi-yellow-intense-fg {
  color: #b27d12;
}

.jp-RenderedText pre .ansi-blue-intense-fg {
  color: #0065ca;
}

.jp-RenderedText pre .ansi-magenta-intense-fg {
  color: #a03196;
}

.jp-RenderedText pre .ansi-cyan-intense-fg {
  color: #258f8f;
}

.jp-RenderedText pre .ansi-white-intense-fg {
  color: #a1a6b2;
}

.jp-RenderedText pre .ansi-black-intense-bg {
  background-color: #282c36;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-red-intense-bg {
  background-color: #b22b31;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-green-intense-bg {
  background-color: #007427;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-yellow-intense-bg {
  background-color: #b27d12;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-blue-intense-bg {
  background-color: #0065ca;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-magenta-intense-bg {
  background-color: #a03196;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-cyan-intense-bg {
  background-color: #258f8f;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-white-intense-bg {
  background-color: #a1a6b2;
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-default-inverse-fg {
  color: var(--jp-ui-inverse-font-color0);
}

.jp-RenderedText pre .ansi-default-inverse-bg {
  background-color: var(--jp-inverse-layout-color0);
  padding: var(--jp-private-code-span-padding) 0;
}

.jp-RenderedText pre .ansi-bold {
  font-weight: bold;
}

.jp-RenderedText pre .ansi-underline {
  text-decoration: underline;
}

.jp-RenderedText[data-mime-type='application/vnd.jupyter.stderr'] {
  background: var(--jp-rendermime-error-background);
  padding-top: var(--jp-code-padding);
}

/*-----------------------------------------------------------------------------
| RenderedLatex
|----------------------------------------------------------------------------*/

.jp-RenderedLatex {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-content-font-size1);
  line-height: var(--jp-content-line-height);
}

/* Left-justify outputs.*/
.jp-OutputArea-output.jp-RenderedLatex {
  padding: var(--jp-code-padding);
  text-align: left;
}

/*-----------------------------------------------------------------------------
| RenderedHTML
|----------------------------------------------------------------------------*/

.jp-RenderedHTMLCommon {
  color: var(--jp-content-font-color1);
  font-family: var(--jp-content-font-family);
  font-size: var(--jp-content-font-size1);
  line-height: var(--jp-content-line-height);

  /* Give a bit more R padding on Markdown text to keep line lengths reasonable */
  padding-right: 20px;
}

.jp-RenderedHTMLCommon em {
  font-style: italic;
}

.jp-RenderedHTMLCommon strong {
  font-weight: bold;
}

.jp-RenderedHTMLCommon u {
  text-decoration: underline;
}

.jp-RenderedHTMLCommon a:link {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

.jp-RenderedHTMLCommon a:hover {
  text-decoration: underline;
  color: var(--jp-content-link-color);
}

.jp-RenderedHTMLCommon a:visited {
  text-decoration: none;
  color: var(--jp-content-link-color);
}

/* Headings */

.jp-RenderedHTMLCommon h1,
.jp-RenderedHTMLCommon h2,
.jp-RenderedHTMLCommon h3,
.jp-RenderedHTMLCommon h4,
.jp-RenderedHTMLCommon h5,
.jp-RenderedHTMLCommon h6 {
  line-height: var(--jp-content-heading-line-height);
  font-weight: var(--jp-content-heading-font-weight);
  font-style: normal;
  margin: var(--jp-content-heading-margin-top) 0
    var(--jp-content-heading-margin-bottom) 0;
}

.jp-RenderedHTMLCommon h1:first-child,
.jp-RenderedHTMLCommon h2:first-child,
.jp-RenderedHTMLCommon h3:first-child,
.jp-RenderedHTMLCommon h4:first-child,
.jp-RenderedHTMLCommon h5:first-child,
.jp-RenderedHTMLCommon h6:first-child {
  margin-top: calc(0.5 * var(--jp-content-heading-margin-top));
}

.jp-RenderedHTMLCommon h1:last-child,
.jp-RenderedHTMLCommon h2:last-child,
.jp-RenderedHTMLCommon h3:last-child,
.jp-RenderedHTMLCommon h4:last-child,
.jp-RenderedHTMLCommon h5:last-child,
.jp-RenderedHTMLCommon h6:last-child {
  margin-bottom: calc(0.5 * var(--jp-content-heading-margin-bottom));
}

.jp-RenderedHTMLCommon h1 {
  font-size: var(--jp-content-font-size5);
}

.jp-RenderedHTMLCommon h2 {
  font-size: var(--jp-content-font-size4);
}

.jp-RenderedHTMLCommon h3 {
  font-size: var(--jp-content-font-size3);
}

.jp-RenderedHTMLCommon h4 {
  font-size: var(--jp-content-font-size2);
}

.jp-RenderedHTMLCommon h5 {
  font-size: var(--jp-content-font-size1);
}

.jp-RenderedHTMLCommon h6 {
  font-size: var(--jp-content-font-size0);
}

/* Lists */

/* stylelint-disable selector-max-type, selector-max-compound-selectors */

.jp-RenderedHTMLCommon ul:not(.list-inline),
.jp-RenderedHTMLCommon ol:not(.list-inline) {
  padding-left: 2em;
}

.jp-RenderedHTMLCommon ul {
  list-style: disc;
}

.jp-RenderedHTMLCommon ul ul {
  list-style: square;
}

.jp-RenderedHTMLCommon ul ul ul {
  list-style: circle;
}

.jp-RenderedHTMLCommon ol {
  list-style: decimal;
}

.jp-RenderedHTMLCommon ol ol {
  list-style: upper-alpha;
}

.jp-RenderedHTMLCommon ol ol ol {
  list-style: lower-alpha;
}

.jp-RenderedHTMLCommon ol ol ol ol {
  list-style: lower-roman;
}

.jp-RenderedHTMLCommon ol ol ol ol ol {
  list-style: decimal;
}

.jp-RenderedHTMLCommon ol,
.jp-RenderedHTMLCommon ul {
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon ul ul,
.jp-RenderedHTMLCommon ul ol,
.jp-RenderedHTMLCommon ol ul,
.jp-RenderedHTMLCommon ol ol {
  margin-bottom: 0;
}

/* stylelint-enable selector-max-type, selector-max-compound-selectors */

.jp-RenderedHTMLCommon hr {
  color: var(--jp-border-color2);
  background-color: var(--jp-border-color1);
  margin-top: 1em;
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon > pre {
  margin: 1.5em 2em;
}

.jp-RenderedHTMLCommon pre,
.jp-RenderedHTMLCommon code {
  border: 0;
  background-color: var(--jp-layout-color0);
  color: var(--jp-content-font-color1);
  font-family: var(--jp-code-font-family);
  font-size: inherit;
  line-height: var(--jp-code-line-height);
  padding: 0;
  white-space: pre-wrap;
}

.jp-RenderedHTMLCommon :not(pre) > code {
  background-color: var(--jp-layout-color2);
  padding: 1px 5px;
}

/* Tables */

.jp-RenderedHTMLCommon table {
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  table-layout: fixed;
  margin-left: auto;
  margin-bottom: 1em;
  margin-right: auto;
}

.jp-RenderedHTMLCommon thead {
  border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
  vertical-align: bottom;
}

.jp-RenderedHTMLCommon td,
.jp-RenderedHTMLCommon th,
.jp-RenderedHTMLCommon tr {
  vertical-align: middle;
  padding: 0.5em;
  line-height: normal;
  white-space: normal;
  max-width: none;
  border: none;
}

.jp-RenderedMarkdown.jp-RenderedHTMLCommon td,
.jp-RenderedMarkdown.jp-RenderedHTMLCommon th {
  max-width: none;
}

:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon td,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon th,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon tr {
  text-align: right;
}

.jp-RenderedHTMLCommon th {
  font-weight: bold;
}

.jp-RenderedHTMLCommon tbody tr:nth-child(odd) {
  background: var(--jp-layout-color0);
}

.jp-RenderedHTMLCommon tbody tr:nth-child(even) {
  background: var(--jp-rendermime-table-row-background);
}

.jp-RenderedHTMLCommon tbody tr:hover {
  background: var(--jp-rendermime-table-row-hover-background);
}

.jp-RenderedHTMLCommon p {
  text-align: left;
  margin: 0;
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon img {
  -moz-force-broken-image-icon: 1;
}

/* Restrict to direct children as other images could be nested in other content. */
.jp-RenderedHTMLCommon > img {
  display: block;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 1em;
}

/* Change color behind transparent images if they need it... */
[data-jp-theme-light='false'] .jp-RenderedImage img.jp-needs-light-background {
  background-color: var(--jp-inverse-layout-color1);
}

[data-jp-theme-light='true'] .jp-RenderedImage img.jp-needs-dark-background {
  background-color: var(--jp-inverse-layout-color1);
}

.jp-RenderedHTMLCommon img,
.jp-RenderedImage img,
.jp-RenderedHTMLCommon svg,
.jp-RenderedSVG svg {
  max-width: 100%;
  height: auto;
}

.jp-RenderedHTMLCommon img.jp-mod-unconfined,
.jp-RenderedImage img.jp-mod-unconfined,
.jp-RenderedHTMLCommon svg.jp-mod-unconfined,
.jp-RenderedSVG svg.jp-mod-unconfined {
  max-width: none;
}

.jp-RenderedHTMLCommon .alert {
  padding: var(--jp-notebook-padding);
  border: var(--jp-border-width) solid transparent;
  border-radius: var(--jp-border-radius);
  margin-bottom: 1em;
}

.jp-RenderedHTMLCommon .alert-info {
  color: var(--jp-info-color0);
  background-color: var(--jp-info-color3);
  border-color: var(--jp-info-color2);
}

.jp-RenderedHTMLCommon .alert-info hr {
  border-color: var(--jp-info-color3);
}

.jp-RenderedHTMLCommon .alert-info > p:last-child,
.jp-RenderedHTMLCommon .alert-info > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-warning {
  color: var(--jp-warn-color0);
  background-color: var(--jp-warn-color3);
  border-color: var(--jp-warn-color2);
}

.jp-RenderedHTMLCommon .alert-warning hr {
  border-color: var(--jp-warn-color3);
}

.jp-RenderedHTMLCommon .alert-warning > p:last-child,
.jp-RenderedHTMLCommon .alert-warning > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-success {
  color: var(--jp-success-color0);
  background-color: var(--jp-success-color3);
  border-color: var(--jp-success-color2);
}

.jp-RenderedHTMLCommon .alert-success hr {
  border-color: var(--jp-success-color3);
}

.jp-RenderedHTMLCommon .alert-success > p:last-child,
.jp-RenderedHTMLCommon .alert-success > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon .alert-danger {
  color: var(--jp-error-color0);
  background-color: var(--jp-error-color3);
  border-color: var(--jp-error-color2);
}

.jp-RenderedHTMLCommon .alert-danger hr {
  border-color: var(--jp-error-color3);
}

.jp-RenderedHTMLCommon .alert-danger > p:last-child,
.jp-RenderedHTMLCommon .alert-danger > ul:last-child {
  margin-bottom: 0;
}

.jp-RenderedHTMLCommon blockquote {
  margin: 1em 2em;
  padding: 0 1em;
  border-left: 5px solid var(--jp-border-color2);
}

a.jp-InternalAnchorLink {
  visibility: hidden;
  margin-left: 8px;
  color: var(--md-blue-800);
}

h1:hover .jp-InternalAnchorLink,
h2:hover .jp-InternalAnchorLink,
h3:hover .jp-InternalAnchorLink,
h4:hover .jp-InternalAnchorLink,
h5:hover .jp-InternalAnchorLink,
h6:hover .jp-InternalAnchorLink {
  visibility: visible;
}

.jp-RenderedHTMLCommon kbd {
  background-color: var(--jp-rendermime-table-row-background);
  border: 1px solid var(--jp-border-color0);
  border-bottom-color: var(--jp-border-color2);
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
  display: inline-block;
  font-size: var(--jp-ui-font-size0);
  line-height: 1em;
  padding: 0.2em 0.5em;
}

/* Most direct children of .jp-RenderedHTMLCommon have a margin-bottom of 1.0.
 * At the bottom of cells this is a bit too much as there is also spacing
 * between cells. Going all the way to 0 gets too tight between markdown and
 * code cells.
 */
.jp-RenderedHTMLCommon > *:last-child {
  margin-bottom: 0.5em;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/

.lm-cursor-backdrop {
  position: fixed;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  will-change: transform;
  z-index: 100;
}

.lm-mod-drag-image {
  will-change: transform;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-lineFormSearch {
  padding: 4px 12px;
  background-color: var(--jp-layout-color2);
  box-shadow: var(--jp-toolbar-box-shadow);
  z-index: 2;
  font-size: var(--jp-ui-font-size1);
}

.jp-lineFormCaption {
  font-size: var(--jp-ui-font-size0);
  line-height: var(--jp-ui-font-size1);
  margin-top: 4px;
  color: var(--jp-ui-font-color0);
}

.jp-baseLineForm {
  border: none;
  border-radius: 0;
  position: absolute;
  background-size: 16px;
  background-repeat: no-repeat;
  background-position: center;
  outline: none;
}

.jp-lineFormButtonContainer {
  top: 4px;
  right: 8px;
  height: 24px;
  padding: 0 12px;
  width: 12px;
}

.jp-lineFormButtonIcon {
  top: 0;
  right: 0;
  background-color: var(--jp-brand-color1);
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  padding: 4px 6px;
}

.jp-lineFormButton {
  top: 0;
  right: 0;
  background-color: transparent;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
}

.jp-lineFormWrapper {
  overflow: hidden;
  padding: 0 8px;
  border: 1px solid var(--jp-border-color0);
  background-color: var(--jp-input-active-background);
  height: 22px;
}

.jp-lineFormWrapperFocusWithin {
  border: var(--jp-border-width) solid var(--md-blue-500);
  box-shadow: inset 0 0 4px var(--md-blue-300);
}

.jp-lineFormInput {
  background: transparent;
  width: 200px;
  height: 100%;
  border: none;
  outline: none;
  color: var(--jp-ui-font-color0);
  line-height: 28px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-JSONEditor {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.jp-JSONEditor-host {
  flex: 1 1 auto;
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  border-radius: 0;
  background: var(--jp-layout-color0);
  min-height: 50px;
  padding: 1px;
}

.jp-JSONEditor.jp-mod-error .jp-JSONEditor-host {
  border-color: red;
  outline-color: red;
}

.jp-JSONEditor-header {
  display: flex;
  flex: 1 0 auto;
  padding: 0 0 0 12px;
}

.jp-JSONEditor-header label {
  flex: 0 0 auto;
}

.jp-JSONEditor-commitButton {
  height: 16px;
  width: 16px;
  background-size: 18px;
  background-repeat: no-repeat;
  background-position: center;
}

.jp-JSONEditor-host.jp-mod-focused {
  background-color: var(--jp-input-active-background);
  border: 1px solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
}

.jp-Editor.jp-mod-dropTarget {
  border: var(--jp-border-width) solid var(--jp-input-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-DocumentSearch-input {
  border: none;
  outline: none;
  color: var(--jp-ui-font-color0);
  font-size: var(--jp-ui-font-size1);
  background-color: var(--jp-layout-color0);
  font-family: var(--jp-ui-font-family);
  padding: 2px 1px;
  resize: none;
}

.jp-DocumentSearch-overlay {
  position: absolute;
  background-color: var(--jp-toolbar-background);
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  border-left: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  top: 0;
  right: 0;
  z-index: 7;
  min-width: 405px;
  padding: 2px;
  font-size: var(--jp-ui-font-size1);

  --jp-private-document-search-button-height: 20px;
}

.jp-DocumentSearch-overlay button {
  background-color: var(--jp-toolbar-background);
  outline: 0;
}

.jp-DocumentSearch-overlay button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-overlay button:active {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-overlay-row {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}

.jp-DocumentSearch-button-content {
  display: inline-block;
  cursor: pointer;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-button-content svg {
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-input-wrapper {
  border: var(--jp-border-width) solid var(--jp-border-color0);
  display: flex;
  background-color: var(--jp-layout-color0);
  margin: 2px;
}

.jp-DocumentSearch-input-wrapper:focus-within {
  border-color: var(--jp-cell-editor-active-border-color);
}

.jp-DocumentSearch-toggle-wrapper,
.jp-DocumentSearch-button-wrapper {
  all: initial;
  overflow: hidden;
  display: inline-block;
  border: none;
  box-sizing: border-box;
}

.jp-DocumentSearch-toggle-wrapper {
  width: 14px;
  height: 14px;
}

.jp-DocumentSearch-button-wrapper {
  width: var(--jp-private-document-search-button-height);
  height: var(--jp-private-document-search-button-height);
}

.jp-DocumentSearch-toggle-wrapper:focus,
.jp-DocumentSearch-button-wrapper:focus {
  outline: var(--jp-border-width) solid
    var(--jp-cell-editor-active-border-color);
  outline-offset: -1px;
}

.jp-DocumentSearch-toggle-wrapper,
.jp-DocumentSearch-button-wrapper,
.jp-DocumentSearch-button-content:focus {
  outline: none;
}

.jp-DocumentSearch-toggle-placeholder {
  width: 5px;
}

.jp-DocumentSearch-input-button::before {
  display: block;
  padding-top: 100%;
}

.jp-DocumentSearch-input-button-off {
  opacity: var(--jp-search-toggle-off-opacity);
}

.jp-DocumentSearch-input-button-off:hover {
  opacity: var(--jp-search-toggle-hover-opacity);
}

.jp-DocumentSearch-input-button-on {
  opacity: var(--jp-search-toggle-on-opacity);
}

.jp-DocumentSearch-index-counter {
  padding-left: 10px;
  padding-right: 10px;
  user-select: none;
  min-width: 35px;
  display: inline-block;
}

.jp-DocumentSearch-up-down-wrapper {
  display: inline-block;
  padding-right: 2px;
  margin-left: auto;
  white-space: nowrap;
}

.jp-DocumentSearch-spacer {
  margin-left: auto;
}

.jp-DocumentSearch-up-down-wrapper button {
  outline: 0;
  border: none;
  width: var(--jp-private-document-search-button-height);
  height: var(--jp-private-document-search-button-height);
  vertical-align: middle;
  margin: 1px 5px 2px;
}

.jp-DocumentSearch-up-down-button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-up-down-button:active {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-filter-button {
  border-radius: var(--jp-border-radius);
}

.jp-DocumentSearch-filter-button:hover {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-filter-button-enabled {
  background-color: var(--jp-layout-color2);
}

.jp-DocumentSearch-filter-button-enabled:hover {
  background-color: var(--jp-layout-color3);
}

.jp-DocumentSearch-search-options {
  padding: 0 8px;
  margin-left: 3px;
  width: 100%;
  display: grid;
  justify-content: start;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  justify-items: stretch;
}

.jp-DocumentSearch-search-filter-disabled {
  color: var(--jp-ui-font-color2);
}

.jp-DocumentSearch-search-filter {
  display: flex;
  align-items: center;
  user-select: none;
}

.jp-DocumentSearch-regex-error {
  color: var(--jp-error-color0);
}

.jp-DocumentSearch-replace-button-wrapper {
  overflow: hidden;
  display: inline-block;
  box-sizing: border-box;
  border: var(--jp-border-width) solid var(--jp-border-color0);
  margin: auto 2px;
  padding: 1px 4px;
  height: calc(var(--jp-private-document-search-button-height) + 2px);
}

.jp-DocumentSearch-replace-button-wrapper:focus {
  border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
}

.jp-DocumentSearch-replace-button {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  box-sizing: border-box;
  color: var(--jp-ui-font-color1);

  /* height - 2 * (padding of wrapper) */
  line-height: calc(var(--jp-private-document-search-button-height) - 2px);
  width: 100%;
  height: 100%;
}

.jp-DocumentSearch-replace-button:focus {
  outline: none;
}

.jp-DocumentSearch-replace-wrapper-class {
  margin-left: 14px;
  display: flex;
}

.jp-DocumentSearch-replace-toggle {
  border: none;
  background-color: var(--jp-toolbar-background);
  border-radius: var(--jp-border-radius);
}

.jp-DocumentSearch-replace-toggle:hover {
  background-color: var(--jp-layout-color2);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.cm-editor {
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  font-family: var(--jp-code-font-family);
  border: 0;
  border-radius: 0;
  height: auto;

  /* Changed to auto to autogrow */
}

.cm-editor pre {
  padding: 0 var(--jp-code-padding);
}

.jp-CodeMirrorEditor[data-type='inline'] .cm-dialog {
  background-color: var(--jp-layout-color0);
  color: var(--jp-content-font-color1);
}

.jp-CodeMirrorEditor {
  cursor: text;
}

/* When zoomed out 67% and 33% on a screen of 1440 width x 900 height */
@media screen and (min-width: 2138px) and (max-width: 4319px) {
  .jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
    border-left: var(--jp-code-cursor-width1) solid
      var(--jp-editor-cursor-color);
  }
}

/* When zoomed out less than 33% */
@media screen and (min-width: 4320px) {
  .jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
    border-left: var(--jp-code-cursor-width2) solid
      var(--jp-editor-cursor-color);
  }
}

.cm-editor.jp-mod-readOnly .cm-cursor {
  display: none;
}

.jp-CollaboratorCursor {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: none;
  border-bottom: 3px solid;
  background-clip: content-box;
  margin-left: -5px;
  margin-right: -5px;
}

.cm-searching,
.cm-searching span {
  /* `.cm-searching span`: we need to override syntax highlighting */
  background-color: var(--jp-search-unselected-match-background-color);
  color: var(--jp-search-unselected-match-color);
}

.cm-searching::selection,
.cm-searching span::selection {
  background-color: var(--jp-search-unselected-match-background-color);
  color: var(--jp-search-unselected-match-color);
}

.jp-current-match > .cm-searching,
.jp-current-match > .cm-searching span,
.cm-searching > .jp-current-match,
.cm-searching > .jp-current-match span {
  background-color: var(--jp-search-selected-match-background-color);
  color: var(--jp-search-selected-match-color);
}

.jp-current-match > .cm-searching::selection,
.cm-searching > .jp-current-match::selection,
.jp-current-match > .cm-searching span::selection {
  background-color: var(--jp-search-selected-match-background-color);
  color: var(--jp-search-selected-match-color);
}

.cm-trailingspace {
  background-image: url();
  background-position: center left;
  background-repeat: repeat-x;
}

.jp-CollaboratorCursor-hover {
  position: absolute;
  z-index: 1;
  transform: translateX(-50%);
  color: white;
  border-radius: 3px;
  padding-left: 4px;
  padding-right: 4px;
  padding-top: 1px;
  padding-bottom: 1px;
  text-align: center;
  font-size: var(--jp-ui-font-size1);
  white-space: nowrap;
}

.jp-CodeMirror-ruler {
  border-left: 1px dashed var(--jp-border-color2);
}

/* Styles for shared cursors (remote cursor locations and selected ranges) */
.jp-CodeMirrorEditor .cm-ySelectionCaret {
  position: relative;
  border-left: 1px solid black;
  margin-left: -1px;
  margin-right: -1px;
  box-sizing: border-box;
}

.jp-CodeMirrorEditor .cm-ySelectionCaret > .cm-ySelectionInfo {
  white-space: nowrap;
  position: absolute;
  top: -1.15em;
  padding-bottom: 0.05em;
  left: -1px;
  font-size: 0.95em;
  font-family: var(--jp-ui-font-family);
  font-weight: bold;
  line-height: normal;
  user-select: none;
  color: white;
  padding-left: 2px;
  padding-right: 2px;
  z-index: 101;
  transition: opacity 0.3s ease-in-out;
}

.jp-CodeMirrorEditor .cm-ySelectionInfo {
  transition-delay: 0.7s;
  opacity: 0;
}

.jp-CodeMirrorEditor .cm-ySelectionCaret:hover > .cm-ySelectionInfo {
  opacity: 1;
  transition-delay: 0s;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-MimeDocument {
  outline: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-filebrowser-button-height: 28px;
  --jp-private-filebrowser-button-width: 48px;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-FileBrowser .jp-SidePanel-content {
  display: flex;
  flex-direction: column;
}

.jp-FileBrowser-toolbar.jp-Toolbar {
  flex-wrap: wrap;
  row-gap: 12px;
  border-bottom: none;
  height: auto;
  margin: 8px 12px 0;
  box-shadow: none;
  padding: 0;
  justify-content: flex-start;
}

.jp-FileBrowser-Panel {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.jp-BreadCrumbs {
  flex: 0 0 auto;
  margin: 8px 12px;
}

.jp-BreadCrumbs-item {
  margin: 0 2px;
  padding: 0 2px;
  border-radius: var(--jp-border-radius);
  cursor: pointer;
}

.jp-BreadCrumbs-item:hover {
  background-color: var(--jp-layout-color2);
}

.jp-BreadCrumbs-item:first-child {
  margin-left: 0;
}

.jp-BreadCrumbs-item.jp-mod-dropTarget {
  background-color: var(--jp-brand-color2);
  opacity: 0.7;
}

/*-----------------------------------------------------------------------------
| Buttons
|----------------------------------------------------------------------------*/

.jp-FileBrowser-toolbar > .jp-Toolbar-item {
  flex: 0 0 auto;
  padding-left: 0;
  padding-right: 2px;
  align-items: center;
  height: unset;
}

.jp-FileBrowser-toolbar > .jp-Toolbar-item .jp-ToolbarButtonComponent {
  width: 40px;
}

/*-----------------------------------------------------------------------------
| Other styles
|----------------------------------------------------------------------------*/

.jp-FileDialog.jp-mod-conflict input {
  color: var(--jp-error-color1);
}

.jp-FileDialog .jp-new-name-title {
  margin-top: 12px;
}

.jp-LastModified-hidden {
  display: none;
}

.jp-FileSize-hidden {
  display: none;
}

.jp-FileBrowser .lm-AccordionPanel > h3:first-child {
  display: none;
}

/*-----------------------------------------------------------------------------
| DirListing
|----------------------------------------------------------------------------*/

.jp-DirListing {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  outline: 0;
}

.jp-DirListing-header {
  flex: 0 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  overflow: hidden;
  border-top: var(--jp-border-width) solid var(--jp-border-color2);
  border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
  box-shadow: var(--jp-toolbar-box-shadow);
  z-index: 2;
}

.jp-DirListing-headerItem {
  padding: 4px 12px 2px;
  font-weight: 500;
}

.jp-DirListing-headerItem:hover {
  background: var(--jp-layout-color2);
}

.jp-DirListing-headerItem.jp-id-name {
  flex: 1 0 84px;
}

.jp-DirListing-headerItem.jp-id-modified {
  flex: 0 0 112px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
}

.jp-DirListing-headerItem.jp-id-filesize {
  flex: 0 0 75px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
}

.jp-id-narrow {
  display: none;
  flex: 0 0 5px;
  padding: 4px;
  border-left: var(--jp-border-width) solid var(--jp-border-color2);
  text-align: right;
  color: var(--jp-border-color2);
}

.jp-DirListing-narrow .jp-id-narrow {
  display: block;
}

.jp-DirListing-narrow .jp-id-modified,
.jp-DirListing-narrow .jp-DirListing-itemModified {
  display: none;
}

.jp-DirListing-headerItem.jp-mod-selected {
  font-weight: 600;
}

/* increase specificity to override bundled default */
.jp-DirListing-content {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  list-style-type: none;
  overflow: auto;
  background-color: var(--jp-layout-color1);
}

.jp-DirListing-content mark {
  color: var(--jp-ui-font-color0);
  background-color: transparent;
  font-weight: bold;
}

.jp-DirListing-content .jp-DirListing-item.jp-mod-selected mark {
  color: var(--jp-ui-inverse-font-color0);
}

/* Style the directory listing content when a user drops a file to upload */
.jp-DirListing.jp-mod-native-drop .jp-DirListing-content {
  outline: 5px dashed rgba(128, 128, 128, 0.5);
  outline-offset: -10px;
  cursor: copy;
}

.jp-DirListing-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 4px 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-DirListing-checkboxWrapper {
  /* Increases hit area of checkbox. */
  padding: 4px;
}

.jp-DirListing-header
  .jp-DirListing-checkboxWrapper
  + .jp-DirListing-headerItem {
  padding-left: 4px;
}

.jp-DirListing-content .jp-DirListing-checkboxWrapper {
  position: relative;
  left: -4px;
  margin: -4px 0 -4px -8px;
}

.jp-DirListing-checkboxWrapper.jp-mod-visible {
  visibility: visible;
}

/* For devices that support hovering, hide checkboxes until hovered, selected...
*/
@media (hover: hover) {
  .jp-DirListing-checkboxWrapper {
    visibility: hidden;
  }

  .jp-DirListing-item:hover .jp-DirListing-checkboxWrapper,
  .jp-DirListing-item.jp-mod-selected .jp-DirListing-checkboxWrapper {
    visibility: visible;
  }
}

.jp-DirListing-item[data-is-dot] {
  opacity: 75%;
}

.jp-DirListing-item.jp-mod-selected {
  color: var(--jp-ui-inverse-font-color1);
  background: var(--jp-brand-color1);
}

.jp-DirListing-item.jp-mod-dropTarget {
  background: var(--jp-brand-color3);
}

.jp-DirListing-item:hover:not(.jp-mod-selected) {
  background: var(--jp-layout-color2);
}

.jp-DirListing-itemIcon {
  flex: 0 0 20px;
  margin-right: 4px;
}

.jp-DirListing-itemText {
  flex: 1 0 64px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  user-select: none;
}

.jp-DirListing-itemText:focus {
  outline-width: 2px;
  outline-color: var(--jp-inverse-layout-color1);
  outline-style: solid;
  outline-offset: 1px;
}

.jp-DirListing-item.jp-mod-selected .jp-DirListing-itemText:focus {
  outline-color: var(--jp-layout-color1);
}

.jp-DirListing-itemModified {
  flex: 0 0 125px;
  text-align: right;
}

.jp-DirListing-itemFileSize {
  flex: 0 0 90px;
  text-align: right;
}

.jp-DirListing-editor {
  flex: 1 0 64px;
  outline: none;
  border: none;
  color: var(--jp-ui-font-color1);
  background-color: var(--jp-layout-color1);
}

.jp-DirListing-item.jp-mod-running .jp-DirListing-itemIcon::before {
  color: var(--jp-success-color1);
  content: '\25CF';
  font-size: 8px;
  position: absolute;
  left: -8px;
}

.jp-DirListing-item.jp-mod-running.jp-mod-selected
  .jp-DirListing-itemIcon::before {
  color: var(--jp-ui-inverse-font-color1);
}

.jp-DirListing-item.lm-mod-drag-image,
.jp-DirListing-item.jp-mod-selected.lm-mod-drag-image {
  font-size: var(--jp-ui-font-size1);
  padding-left: 4px;
  margin-left: 4px;
  width: 160px;
  background-color: var(--jp-ui-inverse-font-color2);
  box-shadow: var(--jp-elevation-z2);
  border-radius: 0;
  color: var(--jp-ui-font-color1);
  transform: translateX(-40%) translateY(-58%);
}

.jp-Document {
  min-width: 120px;
  min-height: 120px;
  outline: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Main OutputArea
| OutputArea has a list of Outputs
|----------------------------------------------------------------------------*/

.jp-OutputArea {
  overflow-y: auto;
}

.jp-OutputArea-child {
  display: table;
  table-layout: fixed;
  width: 100%;
  overflow: hidden;
}

.jp-OutputPrompt {
  width: var(--jp-cell-prompt-width);
  color: var(--jp-cell-outprompt-font-color);
  font-family: var(--jp-cell-prompt-font-family);
  padding: var(--jp-code-padding);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;
  opacity: var(--jp-cell-prompt-opacity);

  /* Right align prompt text, don't wrap to handle large prompt numbers */
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  /* Disable text selection */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-OutputArea-prompt {
  display: table-cell;
  vertical-align: top;
}

.jp-OutputArea-output {
  display: table-cell;
  width: 100%;
  height: auto;
  overflow: auto;
  user-select: text;
  -moz-user-select: text;
  -webkit-user-select: text;
  -ms-user-select: text;
}

.jp-OutputArea .jp-RenderedText {
  padding-left: 1ch;
}

/**
 * Prompt overlay.
 */

.jp-OutputArea-promptOverlay {
  position: absolute;
  top: 0;
  width: var(--jp-cell-prompt-width);
  height: 100%;
  opacity: 0.5;
}

.jp-OutputArea-promptOverlay:hover {
  background: var(--jp-layout-color2);
  box-shadow: inset 0 0 1px var(--jp-inverse-layout-color0);
  cursor: zoom-out;
}

.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay:hover {
  cursor: zoom-in;
}

/**
 * Isolated output.
 */
.jp-OutputArea-output.jp-mod-isolated {
  width: 100%;
  display: block;
}

/*
When drag events occur, `lm-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated {
  position: relative;
}

body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: transparent;
}

/* pre */

.jp-OutputArea-output pre {
  border: none;
  margin: 0;
  padding: 0;
  overflow-x: auto;
  overflow-y: auto;
  word-break: break-all;
  word-wrap: break-word;
  white-space: pre-wrap;
}

/* tables */

.jp-OutputArea-output.jp-RenderedHTMLCommon table {
  margin-left: 0;
  margin-right: 0;
}

/* description lists */

.jp-OutputArea-output dl,
.jp-OutputArea-output dt,
.jp-OutputArea-output dd {
  display: block;
}

.jp-OutputArea-output dl {
  width: 100%;
  overflow: hidden;
  padding: 0;
  margin: 0;
}

.jp-OutputArea-output dt {
  font-weight: bold;
  float: left;
  width: 20%;
  padding: 0;
  margin: 0;
}

.jp-OutputArea-output dd {
  float: left;
  width: 80%;
  padding: 0;
  margin: 0;
}

.jp-TrimmedOutputs pre {
  background: var(--jp-layout-color3);
  font-size: calc(var(--jp-code-font-size) * 1.4);
  text-align: center;
  text-transform: uppercase;
}

/* Hide the gutter in case of
 *  - nested output areas (e.g. in the case of output widgets)
 *  - mirrored output areas
 */
.jp-OutputArea .jp-OutputArea .jp-OutputArea-prompt {
  display: none;
}

/* Hide empty lines in the output area, for instance due to cleared widgets */
.jp-OutputArea-prompt:empty {
  padding: 0;
  border: 0;
}

/*-----------------------------------------------------------------------------
| executeResult is added to any Output-result for the display of the object
| returned by a cell
|----------------------------------------------------------------------------*/

.jp-OutputArea-output.jp-OutputArea-executeResult {
  margin-left: 0;
  width: 100%;
}

/* Text output with the Out[] prompt needs a top padding to match the
 * alignment of the Out[] prompt itself.
 */
.jp-OutputArea-executeResult .jp-RenderedText.jp-OutputArea-output {
  padding-top: var(--jp-code-padding);
  border-top: var(--jp-border-width) solid transparent;
}

/*-----------------------------------------------------------------------------
| The Stdin output
|----------------------------------------------------------------------------*/

.jp-Stdin-prompt {
  color: var(--jp-content-font-color0);
  padding-right: var(--jp-code-padding);
  vertical-align: baseline;
  flex: 0 0 auto;
}

.jp-Stdin-input {
  font-family: var(--jp-code-font-family);
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  width: 42%;
  min-width: 200px;

  /* make sure input baseline aligns with prompt */
  vertical-align: baseline;

  /* padding + margin = 0.5em between prompt and cursor */
  padding: 0 0.25em;
  margin: 0 0.25em;
  flex: 0 0 70%;
}

.jp-Stdin-input::placeholder {
  opacity: 0;
}

.jp-Stdin-input:focus {
  box-shadow: none;
}

.jp-Stdin-input:focus::placeholder {
  opacity: 1;
}

/*-----------------------------------------------------------------------------
| Output Area View
|----------------------------------------------------------------------------*/

.jp-LinkedOutputView .jp-OutputArea {
  height: 100%;
  display: block;
}

.jp-LinkedOutputView .jp-OutputArea-output:only-child {
  height: 100%;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

@media print {
  .jp-OutputArea-child {
    break-inside: avoid-page;
  }
}

/*-----------------------------------------------------------------------------
| Mobile
|----------------------------------------------------------------------------*/
@media only screen and (max-width: 760px) {
  .jp-OutputPrompt {
    display: table-row;
    text-align: left;
  }

  .jp-OutputArea-child .jp-OutputArea-output {
    display: table-row;
    margin-left: var(--jp-notebook-padding);
  }
}

/* Trimmed outputs warning */
.jp-TrimmedOutputs > a {
  margin: 10px;
  text-decoration: none;
  cursor: pointer;
}

.jp-TrimmedOutputs > a:hover {
  text-decoration: none;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Table of Contents
|----------------------------------------------------------------------------*/

:root {
  --jp-private-toc-active-width: 4px;
}

.jp-TableOfContents {
  display: flex;
  flex-direction: column;
  background: var(--jp-layout-color1);
  color: var(--jp-ui-font-color1);
  font-size: var(--jp-ui-font-size1);
  height: 100%;
}

.jp-TableOfContents-placeholder {
  text-align: center;
}

.jp-TableOfContents-placeholderContent {
  color: var(--jp-content-font-color2);
  padding: 8px;
}

.jp-TableOfContents-placeholderContent > h3 {
  margin-bottom: var(--jp-content-heading-margin-bottom);
}

.jp-TableOfContents .jp-SidePanel-content {
  overflow-y: auto;
}

.jp-TableOfContents-tree {
  margin: 4px;
}

.jp-TableOfContents ol {
  list-style-type: none;
}

/* stylelint-disable-next-line selector-max-type */
.jp-TableOfContents li > ol {
  /* Align left border with triangle icon center */
  padding-left: 11px;
}

.jp-TableOfContents-content {
  /* left margin for the active heading indicator */
  margin: 0 0 0 var(--jp-private-toc-active-width);
  padding: 0;
  background-color: var(--jp-layout-color1);
}

.jp-tocItem {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.jp-tocItem-heading {
  display: flex;
  cursor: pointer;
}

.jp-tocItem-heading:hover {
  background-color: var(--jp-layout-color2);
}

.jp-tocItem-content {
  display: block;
  padding: 4px 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow-x: hidden;
}

.jp-tocItem-collapser {
  height: 20px;
  margin: 2px 2px 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
}

.jp-tocItem-collapser:hover {
  background-color: var(--jp-layout-color3);
}

/* Active heading indicator */

.jp-tocItem-heading::before {
  content: ' ';
  background: transparent;
  width: var(--jp-private-toc-active-width);
  height: 24px;
  position: absolute;
  left: 0;
  border-radius: var(--jp-border-radius);
}

.jp-tocItem-heading.jp-tocItem-active::before {
  background-color: var(--jp-brand-color1);
}

.jp-tocItem-heading:hover.jp-tocItem-active::before {
  background: var(--jp-brand-color0);
  opacity: 1;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

.jp-Collapser {
  flex: 0 0 var(--jp-cell-collapser-width);
  padding: 0;
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
  border-radius: var(--jp-border-radius);
  opacity: 1;
}

.jp-Collapser-child {
  display: block;
  width: 100%;
  box-sizing: border-box;

  /* height: 100% doesn't work because the height of its parent is computed from content */
  position: absolute;
  top: 0;
  bottom: 0;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

/*
Hiding collapsers in print mode.

Note: input and output wrappers have "display: block" propery in print mode.
*/

@media print {
  .jp-Collapser {
    display: none;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Header/Footer
|----------------------------------------------------------------------------*/

/* Hidden by zero height by default */
.jp-CellHeader,
.jp-CellFooter {
  height: 0;
  width: 100%;
  padding: 0;
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Input
|----------------------------------------------------------------------------*/

/* All input areas */
.jp-InputArea {
  display: table;
  table-layout: fixed;
  width: 100%;
  overflow: hidden;
}

.jp-InputArea-editor {
  display: table-cell;
  overflow: hidden;
  vertical-align: top;

  /* This is the non-active, default styling */
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  border-radius: 0;
  background: var(--jp-cell-editor-background);
}

.jp-InputPrompt {
  display: table-cell;
  vertical-align: top;
  width: var(--jp-cell-prompt-width);
  color: var(--jp-cell-inprompt-font-color);
  font-family: var(--jp-cell-prompt-font-family);
  padding: var(--jp-code-padding);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  opacity: var(--jp-cell-prompt-opacity);
  line-height: var(--jp-code-line-height);
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;

  /* Right align prompt text, don't wrap to handle large prompt numbers */
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  /* Disable text selection */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/*-----------------------------------------------------------------------------
| Mobile
|----------------------------------------------------------------------------*/
@media only screen and (max-width: 760px) {
  .jp-InputArea-editor {
    display: table-row;
    margin-left: var(--jp-notebook-padding);
  }

  .jp-InputPrompt {
    display: table-row;
    text-align: left;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/

.jp-Placeholder {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.jp-Placeholder-prompt {
  display: table-cell;
  box-sizing: border-box;
}

.jp-Placeholder-content {
  display: table-cell;
  padding: 4px 6px;
  border: 1px solid transparent;
  border-radius: 0;
  background: none;
  box-sizing: border-box;
  cursor: pointer;
}

.jp-Placeholder-contentContainer {
  display: flex;
}

.jp-Placeholder-content:hover,
.jp-InputPlaceholder > .jp-Placeholder-content:hover {
  border-color: var(--jp-layout-color3);
}

.jp-Placeholder-content .jp-MoreHorizIcon {
  width: 32px;
  height: 16px;
  border: 1px solid transparent;
  border-radius: var(--jp-border-radius);
}

.jp-Placeholder-content .jp-MoreHorizIcon:hover {
  border: 1px solid var(--jp-border-color1);
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);
  background-color: var(--jp-layout-color0);
}

.jp-PlaceholderText {
  white-space: nowrap;
  overflow-x: hidden;
  color: var(--jp-inverse-layout-color3);
  font-family: var(--jp-code-font-family);
}

.jp-InputPlaceholder > .jp-Placeholder-content {
  border-color: var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background);
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Private CSS variables
|----------------------------------------------------------------------------*/

:root {
  --jp-private-cell-scrolling-output-offset: 5px;
}

/*-----------------------------------------------------------------------------
| Cell
|----------------------------------------------------------------------------*/

.jp-Cell {
  padding: var(--jp-cell-padding);
  margin: 0;
  border: none;
  outline: none;
  background: transparent;
}

/*-----------------------------------------------------------------------------
| Common input/output
|----------------------------------------------------------------------------*/

.jp-Cell-inputWrapper,
.jp-Cell-outputWrapper {
  display: flex;
  flex-direction: row;
  padding: 0;
  margin: 0;

  /* Added to reveal the box-shadow on the input and output collapsers. */
  overflow: visible;
}

/* Only input/output areas inside cells */
.jp-Cell-inputArea,
.jp-Cell-outputArea {
  flex: 1 1 auto;
}

/*-----------------------------------------------------------------------------
| Collapser
|----------------------------------------------------------------------------*/

/* Make the output collapser disappear when there is not output, but do so
 * in a manner that leaves it in the layout and preserves its width.
 */
.jp-Cell.jp-mod-noOutputs .jp-Cell-outputCollapser {
  border: none !important;
  background: transparent !important;
}

.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputCollapser {
  min-height: var(--jp-cell-collapser-min-height);
}

/*-----------------------------------------------------------------------------
| Output
|----------------------------------------------------------------------------*/

/* Put a space between input and output when there IS output */
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputWrapper {
  margin-top: 5px;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea {
  overflow-y: auto;
  max-height: 24em;
  margin-left: var(--jp-private-cell-scrolling-output-offset);
  resize: vertical;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea[style*='height'] {
  max-height: unset;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea::after {
  content: ' ';
  box-shadow: inset 0 0 6px 2px rgb(0 0 0 / 30%);
  width: 100%;
  height: 100%;
  position: sticky;
  bottom: 0;
  top: 0;
  margin-top: -50%;
  float: left;
  display: block;
  pointer-events: none;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-child {
  padding-top: 6px;
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-prompt {
  width: calc(
    var(--jp-cell-prompt-width) - var(--jp-private-cell-scrolling-output-offset)
  );
}

.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay {
  left: calc(-1 * var(--jp-private-cell-scrolling-output-offset));
}

/*-----------------------------------------------------------------------------
| CodeCell
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| MarkdownCell
|----------------------------------------------------------------------------*/

.jp-MarkdownOutput {
  display: table-cell;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: var(--jp-code-padding);
}

.jp-MarkdownOutput.jp-RenderedHTMLCommon {
  overflow: auto;
}

/* collapseHeadingButton (show always if hiddenCellsButton is _not_ shown) */
.jp-collapseHeadingButton {
  display: flex;
  min-height: var(--jp-cell-collapser-min-height);
  font-size: var(--jp-code-font-size);
  position: absolute;
  background-color: transparent;
  background-size: 25px;
  background-repeat: no-repeat;
  background-position-x: center;
  background-position-y: top;
  background-image: var(--jp-icon-caret-down);
  right: 0;
  top: 0;
  bottom: 0;
}

.jp-collapseHeadingButton.jp-mod-collapsed {
  background-image: var(--jp-icon-caret-right);
}

/*
 set the container font size to match that of content
 so that the nested collapse buttons have the right size
*/
.jp-MarkdownCell .jp-InputPrompt {
  font-size: var(--jp-content-font-size1);
}

/*
  Align collapseHeadingButton with cell top header
  The font sizes are identical to the ones in packages/rendermime/style/base.css
*/
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='1'] {
  font-size: var(--jp-content-font-size5);
  background-position-y: calc(0.3 * var(--jp-content-font-size5));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='2'] {
  font-size: var(--jp-content-font-size4);
  background-position-y: calc(0.3 * var(--jp-content-font-size4));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='3'] {
  font-size: var(--jp-content-font-size3);
  background-position-y: calc(0.3 * var(--jp-content-font-size3));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='4'] {
  font-size: var(--jp-content-font-size2);
  background-position-y: calc(0.3 * var(--jp-content-font-size2));
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='5'] {
  font-size: var(--jp-content-font-size1);
  background-position-y: top;
}

.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='6'] {
  font-size: var(--jp-content-font-size0);
  background-position-y: top;
}

/* collapseHeadingButton (show only on (hover,active) if hiddenCellsButton is shown) */
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-collapseHeadingButton {
  display: none;
}

.jp-Notebook.jp-mod-showHiddenCellsButton
  :is(.jp-MarkdownCell:hover, .jp-mod-active)
  .jp-collapseHeadingButton {
  display: flex;
}

/* showHiddenCellsButton (only show if jp-mod-showHiddenCellsButton is set, which
is a consequence of the showHiddenCellsButton option in Notebook Settings)*/
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton {
  margin-left: calc(var(--jp-cell-prompt-width) + 2 * var(--jp-code-padding));
  margin-top: var(--jp-code-padding);
  border: 1px solid var(--jp-border-color2);
  background-color: var(--jp-border-color3) !important;
  color: var(--jp-content-font-color0) !important;
  display: flex;
}

.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton:hover {
  background-color: var(--jp-border-color2) !important;
}

.jp-showHiddenCellsButton {
  display: none;
}

/*-----------------------------------------------------------------------------
| Printing
|----------------------------------------------------------------------------*/

/*
Using block instead of flex to allow the use of the break-inside CSS property for
cell outputs.
*/

@media print {
  .jp-Cell-inputWrapper,
  .jp-Cell-outputWrapper {
    display: block;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

:root {
  --jp-notebook-toolbar-padding: 2px 5px 2px 2px;
}

/*-----------------------------------------------------------------------------

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-NotebookPanel-toolbar {
  padding: var(--jp-notebook-toolbar-padding);

  /* disable paint containment from lumino 2.0 default strict CSS containment */
  contain: style size !important;
}

.jp-Toolbar-item.jp-Notebook-toolbarCellType .jp-select-wrapper.jp-mod-focused {
  border: none;
  box-shadow: none;
}

.jp-Notebook-toolbarCellTypeDropdown select {
  height: 24px;
  font-size: var(--jp-ui-font-size1);
  line-height: 14px;
  border-radius: 0;
  display: block;
}

.jp-Notebook-toolbarCellTypeDropdown span {
  top: 5px !important;
}

.jp-Toolbar-responsive-popup {
  position: absolute;
  height: fit-content;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
  box-shadow: var(--jp-toolbar-box-shadow);
  background: var(--jp-toolbar-background);
  min-height: var(--jp-toolbar-micro-height);
  padding: var(--jp-notebook-toolbar-padding);
  z-index: 1;
  right: 0;
  top: 0;
}

.jp-Toolbar > .jp-Toolbar-responsive-opener {
  margin-left: auto;
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------

/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/

.jp-Notebook-ExecutionIndicator {
  position: relative;
  display: inline-block;
  height: 100%;
  z-index: 9997;
}

.jp-Notebook-ExecutionIndicator-tooltip {
  visibility: hidden;
  height: auto;
  width: max-content;
  width: -moz-max-content;
  background-color: var(--jp-layout-color2);
  color: var(--jp-ui-font-color1);
  text-align: justify;
  border-radius: 6px;
  padding: 0 5px;
  position: fixed;
  display: table;
}

.jp-Notebook-ExecutionIndicator-tooltip.up {
  transform: translateX(-50%) translateY(-100%) translateY(-32px);
}

.jp-Notebook-ExecutionIndicator-tooltip.down {
  transform: translateX(calc(-100% + 16px)) translateY(5px);
}

.jp-Notebook-ExecutionIndicator-tooltip.hidden {
  display: none;
}

.jp-Notebook-ExecutionIndicator:hover .jp-Notebook-ExecutionIndicator-tooltip {
  visibility: visible;
}

.jp-Notebook-ExecutionIndicator span {
  font-size: var(--jp-ui-font-size1);
  font-family: var(--jp-ui-font-family);
  color: var(--jp-ui-font-color1);
  line-height: 24px;
  display: block;
}

.jp-Notebook-ExecutionIndicator-progress-bar {
  display: flex;
  justify-content: center;
  height: 100%;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

/*
 * Execution indicator
 */
.jp-tocItem-content::after {
  content: '';

  /* Must be identical to form a circle */
  width: 12px;
  height: 12px;
  background: none;
  border: none;
  position: absolute;
  right: 0;
}

.jp-tocItem-content[data-running='0']::after {
  border-radius: 50%;
  border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
  background: none;
}

.jp-tocItem-content[data-running='1']::after {
  border-radius: 50%;
  border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
  background-color: var(--jp-inverse-layout-color3);
}

.jp-tocItem-content[data-running='0'],
.jp-tocItem-content[data-running='1'] {
  margin-right: 12px;
}

/*
 * Copyright (c) Jupyter Development Team.
 * Distributed under the terms of the Modified BSD License.
 */

.jp-Notebook-footer {
  height: 27px;
  margin-left: calc(
    var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
      var(--jp-cell-padding)
  );
  width: calc(
    100% -
      (
        var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
          var(--jp-cell-padding) + var(--jp-cell-padding)
      )
  );
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  color: var(--jp-ui-font-color3);
  margin-top: 6px;
  background: none;
  cursor: pointer;
}

.jp-Notebook-footer:focus {
  border-color: var(--jp-cell-editor-active-border-color);
}

/* For devices that support hovering, hide footer until hover */
@media (hover: hover) {
  .jp-Notebook-footer {
    opacity: 0;
  }

  .jp-Notebook-footer:focus,
  .jp-Notebook-footer:hover {
    opacity: 1;
  }
}

/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| Imports
|----------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------
| CSS variables
|----------------------------------------------------------------------------*/

:root {
  --jp-side-by-side-output-size: 1fr;
  --jp-side-by-side-resized-cell: var(--jp-side-by-side-output-size);
  --jp-private-notebook-dragImage-width: 304px;
  --jp-private-notebook-dragImage-height: 36px;
  --jp-private-notebook-selected-color: var(--md-blue-400);
  --jp-private-notebook-active-color: var(--md-green-400);
}

/*-----------------------------------------------------------------------------
| Notebook
|----------------------------------------------------------------------------*/

/* stylelint-disable selector-max-class */

.jp-NotebookPanel {
  display: block;
  height: 100%;
}

.jp-NotebookPanel.jp-Document {
  min-width: 240px;
  min-height: 120px;
}

.jp-Notebook {
  padding: var(--jp-notebook-padding);
  outline: none;
  overflow: auto;
  background: var(--jp-layout-color0);
}

.jp-Notebook.jp-mod-scrollPastEnd::after {
  display: block;
  content: '';
  min-height: var(--jp-notebook-scroll-padding);
}

.jp-MainAreaWidget-ContainStrict .jp-Notebook * {
  contain: strict;
}

.jp-Notebook .jp-Cell {
  overflow: visible;
}

.jp-Notebook .jp-Cell .jp-InputPrompt {
  cursor: move;
}

/*-----------------------------------------------------------------------------
| Notebook state related styling
|
| The notebook and cells each have states, here are the possibilities:
|
| - Notebook
|   - Command
|   - Edit
| - Cell
|   - None
|   - Active (only one can be active)
|   - Selected (the cells actions are applied to)
|   - Multiselected (when multiple selected, the cursor)
|   - No outputs
|----------------------------------------------------------------------------*/

/* Command or edit modes */

.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-InputPrompt {
  opacity: var(--jp-cell-prompt-not-active-opacity);
  color: var(--jp-cell-prompt-not-active-font-color);
}

.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-OutputPrompt {
  opacity: var(--jp-cell-prompt-not-active-opacity);
  color: var(--jp-cell-prompt-not-active-font-color);
}

/* cell is active */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser {
  background: var(--jp-brand-color1);
}

/* cell is dirty */
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt {
  color: var(--jp-warn-color1);
}

.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt::before {
  color: var(--jp-warn-color1);
  content: '•';
}

.jp-Notebook .jp-Cell.jp-mod-active.jp-mod-dirty .jp-Collapser {
  background: var(--jp-warn-color1);
}

/* collapser is hovered */
.jp-Notebook .jp-Cell .jp-Collapser:hover {
  box-shadow: var(--jp-elevation-z2);
  background: var(--jp-brand-color1);
  opacity: var(--jp-cell-collapser-not-active-hover-opacity);
}

/* cell is active and collapser is hovered */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser:hover {
  background: var(--jp-brand-color0);
  opacity: 1;
}

/* Command mode */

.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-selected {
  background: var(--jp-notebook-multiselected-color);
}

.jp-Notebook.jp-mod-commandMode
  .jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {
  background: transparent;
}

/* Edit mode */

.jp-Notebook.jp-mod-editMode .jp-Cell.jp-mod-active .jp-InputArea-editor {
  border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
  box-shadow: var(--jp-input-box-shadow);
  background-color: var(--jp-cell-editor-active-background);
}

/*-----------------------------------------------------------------------------
| Notebook drag and drop
|----------------------------------------------------------------------------*/

.jp-Notebook-cell.jp-mod-dropSource {
  opacity: 0.5;
}

.jp-Notebook-cell.jp-mod-dropTarget,
.jp-Notebook.jp-mod-commandMode
  .jp-Notebook-cell.jp-mod-active.jp-mod-selected.jp-mod-dropTarget {
  border-top-color: var(--jp-private-notebook-selected-color);
  border-top-style: solid;
  border-top-width: 2px;
}

.jp-dragImage {
  display: block;
  flex-direction: row;
  width: var(--jp-private-notebook-dragImage-width);
  height: var(--jp-private-notebook-dragImage-height);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background);
  overflow: visible;
}

.jp-dragImage-singlePrompt {
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
}

.jp-dragImage .jp-dragImage-content {
  flex: 1 1 auto;
  z-index: 2;
  font-size: var(--jp-code-font-size);
  font-family: var(--jp-code-font-family);
  line-height: var(--jp-code-line-height);
  padding: var(--jp-code-padding);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  background: var(--jp-cell-editor-background-color);
  color: var(--jp-content-font-color3);
  text-align: left;
  margin: 4px 4px 4px 0;
}

.jp-dragImage .jp-dragImage-prompt {
  flex: 0 0 auto;
  min-width: 36px;
  color: var(--jp-cell-inprompt-font-color);
  padding: var(--jp-code-padding);
  padding-left: 12px;
  font-family: var(--jp-cell-prompt-font-family);
  letter-spacing: var(--jp-cell-prompt-letter-spacing);
  line-height: 1.9;
  font-size: var(--jp-code-font-size);
  border: var(--jp-border-width) solid transparent;
}

.jp-dragImage-multipleBack {
  z-index: -1;
  position: absolute;
  height: 32px;
  width: 300px;
  top: 8px;
  left: 8px;
  background: var(--jp-layout-color2);
  border: var(--jp-border-width) solid var(--jp-input-border-color);
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
}

/*-----------------------------------------------------------------------------
| Cell toolbar
|----------------------------------------------------------------------------*/

.jp-NotebookTools {
  display: block;
  min-width: var(--jp-sidebar-min-width);
  color: var(--jp-ui-font-color1);
  background: var(--jp-layout-color1);

  /* This is needed so that all font sizing of children done in ems is
    * relative to this base size */
  font-size: var(--jp-ui-font-size1);
  overflow: auto;
}

.jp-ActiveCellTool {
  padding: 12px 0;
  display: flex;
}

.jp-ActiveCellTool-Content {
  flex: 1 1 auto;
}

.jp-ActiveCellTool .jp-ActiveCellTool-CellContent {
  background: var(--jp-cell-editor-background);
  border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  border-radius: 0;
  min-height: 29px;
}

.jp-ActiveCellTool .jp-InputPrompt {
  min-width: calc(var(--jp-cell-prompt-width) * 0.75);
}

.jp-ActiveCellTool-CellContent > pre {
  padding: 5px 4px;
  margin: 0;
  white-space: normal;
}

.jp-MetadataEditorTool {
  flex-direction: column;
  padding: 12px 0;
}

.jp-RankedPanel > :not(:first-child) {
  margin-top: 12px;
}

.jp-KeySelector select.jp-mod-styled {
  font-size: var(--jp-ui-font-size1);
  color: var(--jp-ui-font-color0);
  border: var(--jp-border-width) solid var(--jp-border-color1);
}

.jp-KeySelector label,
.jp-MetadataEditorTool label,
.jp-NumberSetter label {
  line-height: 1.4;
}

.jp-NotebookTools .jp-select-wrapper {
  margin-top: 4px;
  margin-bottom: 0;
}

.jp-NumberSetter input {
  width: 100%;
  margin-top: 4px;
}

.jp-NotebookTools .jp-Collapse {
  margin-top: 16px;
}

/*-----------------------------------------------------------------------------
| Presentation Mode (.jp-mod-presentationMode)
|----------------------------------------------------------------------------*/

.jp-mod-presentationMode .jp-Notebook {
  --jp-content-font-size1: var(--jp-content-presentation-font-size1);
  --jp-code-font-size: var(--jp-code-presentation-font-size);
}

.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-InputPrompt,
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-OutputPrompt {
  flex: 0 0 110px;
}

/*-----------------------------------------------------------------------------
| Side-by-side Mode (.jp-mod-sideBySide)
|----------------------------------------------------------------------------*/
.jp-mod-sideBySide.jp-Notebook .jp-Notebook-cell {
  margin-top: 3em;
  margin-bottom: 3em;
  margin-left: 5%;
  margin-right: 5%;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) min-content minmax(
      0,
      var(--jp-side-by-side-output-size)
    );
  grid-template-rows: auto minmax(0, 1fr) auto;
  grid-template-areas:
    'header header header'
    'input handle output'
    'footer footer footer';
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell.jp-mod-resizedCell {
  grid-template-columns: minmax(0, 1fr) min-content minmax(
      0,
      var(--jp-side-by-side-resized-cell)
    );
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellHeader {
  grid-area: header;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-inputWrapper {
  grid-area: input;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-outputWrapper {
  /* overwrite the default margin (no vertical separation needed in side by side move */
  margin-top: 0;
  grid-area: output;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellFooter {
  grid-area: footer;
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle {
  grid-area: handle;
  user-select: none;
  display: block;
  height: 100%;
  cursor: ew-resize;
  padding: 0 var(--jp-cell-padding);
}

.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle::after {
  content: '';
  display: block;
  background: var(--jp-border-color2);
  height: 100%;
  width: 5px;
}

.jp-mod-sideBySide.jp-Notebook
  .jp-CodeCell.jp-mod-resizedCell
  .jp-CellResizeHandle::after {
  background: var(--jp-border-color0);
}

.jp-CellResizeHandle {
  display: none;
}

/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/

.jp-Cell-Placeholder {
  padding-left: 55px;
}

.jp-Cell-Placeholder-wrapper {
  background: #fff;
  border: 1px solid;
  border-color: #e5e6e9 #dfe0e4 #d0d1d5;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  margin: 10px 15px;
}

.jp-Cell-Placeholder-wrapper-inner {
  padding: 15px;
  position: relative;
}

.jp-Cell-Placeholder-wrapper-body {
  background-repeat: repeat;
  background-size: 50% auto;
}

.jp-Cell-Placeholder-wrapper-body div {
  background: #f6f7f8;
  background-image: -webkit-linear-gradient(
    left,
    #f6f7f8 0%,
    #edeef1 20%,
    #f6f7f8 40%,
    #f6f7f8 100%
  );
  background-repeat: no-repeat;
  background-size: 800px 104px;
  height: 104px;
  position: absolute;
  right: 15px;
  left: 15px;
  top: 15px;
}

div.jp-Cell-Placeholder-h1 {
  top: 20px;
  height: 20px;
  left: 15px;
  width: 150px;
}

div.jp-Cell-Placeholder-h2 {
  left: 15px;
  top: 50px;
  height: 10px;
  width: 100px;
}

div.jp-Cell-Placeholder-content-1,
div.jp-Cell-Placeholder-content-2,
div.jp-Cell-Placeholder-content-3 {
  left: 15px;
  right: 15px;
  height: 10px;
}

div.jp-Cell-Placeholder-content-1 {
  top: 100px;
}

div.jp-Cell-Placeholder-content-2 {
  top: 120px;
}

div.jp-Cell-Placeholder-content-3 {
  top: 140px;
}

</style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/

/*
The following CSS variables define the main, public API for styling JupyterLab.
These variables should be used by all plugins wherever possible. In other
words, plugins should not define custom colors, sizes, etc unless absolutely
necessary. This enables users to change the visual theme of JupyterLab
by changing these variables.

Many variables appear in an ordered sequence (0,1,2,3). These sequences
are designed to work well together, so for example, `--jp-border-color1` should
be used with `--jp-layout-color1`. The numbers have the following meanings:

* 0: super-primary, reserved for special emphasis
* 1: primary, most important under normal situations
* 2: secondary, next most important under normal situations
* 3: tertiary, next most important under normal situations

Throughout JupyterLab, we are mostly following principles from Google's
Material Design when selecting colors. We are not, however, following
all of MD as it is not optimized for dense, information rich UIs.
*/

:root {
  /* Elevation
   *
   * We style box-shadows using Material Design's idea of elevation. These particular numbers are taken from here:
   *
   * https://github.com/material-components/material-components-web
   * https://material-components-web.appspot.com/elevation.html
   */

  --jp-shadow-base-lightness: 0;
  --jp-shadow-umbra-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.2
  );
  --jp-shadow-penumbra-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.14
  );
  --jp-shadow-ambient-color: rgba(
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    var(--jp-shadow-base-lightness),
    0.12
  );
  --jp-elevation-z0: none;
  --jp-elevation-z1: 0 2px 1px -1px var(--jp-shadow-umbra-color),
    0 1px 1px 0 var(--jp-shadow-penumbra-color),
    0 1px 3px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z2: 0 3px 1px -2px var(--jp-shadow-umbra-color),
    0 2px 2px 0 var(--jp-shadow-penumbra-color),
    0 1px 5px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z4: 0 2px 4px -1px var(--jp-shadow-umbra-color),
    0 4px 5px 0 var(--jp-shadow-penumbra-color),
    0 1px 10px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z6: 0 3px 5px -1px var(--jp-shadow-umbra-color),
    0 6px 10px 0 var(--jp-shadow-penumbra-color),
    0 1px 18px 0 var(--jp-shadow-ambient-color);
  --jp-elevation-z8: 0 5px 5px -3px var(--jp-shadow-umbra-color),
    0 8px 10px 1px var(--jp-shadow-penumbra-color),
    0 3px 14px 2px var(--jp-shadow-ambient-color);
  --jp-elevation-z12: 0 7px 8px -4px var(--jp-shadow-umbra-color),
    0 12px 17px 2px var(--jp-shadow-penumbra-color),
    0 5px 22px 4px var(--jp-shadow-ambient-color);
  --jp-elevation-z16: 0 8px 10px -5px var(--jp-shadow-umbra-color),
    0 16px 24px 2px var(--jp-shadow-penumbra-color),
    0 6px 30px 5px var(--jp-shadow-ambient-color);
  --jp-elevation-z20: 0 10px 13px -6px var(--jp-shadow-umbra-color),
    0 20px 31px 3px var(--jp-shadow-penumbra-color),
    0 8px 38px 7px var(--jp-shadow-ambient-color);
  --jp-elevation-z24: 0 11px 15px -7px var(--jp-shadow-umbra-color),
    0 24px 38px 3px var(--jp-shadow-penumbra-color),
    0 9px 46px 8px var(--jp-shadow-ambient-color);

  /* Borders
   *
   * The following variables, specify the visual styling of borders in JupyterLab.
   */

  --jp-border-width: 1px;
  --jp-border-color0: var(--md-grey-400);
  --jp-border-color1: var(--md-grey-400);
  --jp-border-color2: var(--md-grey-300);
  --jp-border-color3: var(--md-grey-200);
  --jp-inverse-border-color: var(--md-grey-600);
  --jp-border-radius: 2px;

  /* UI Fonts
   *
   * The UI font CSS variables are used for the typography all of the JupyterLab
   * user interface elements that are not directly user generated content.
   *
   * The font sizing here is done assuming that the body font size of --jp-ui-font-size1
   * is applied to a parent element. When children elements, such as headings, are sized
   * in em all things will be computed relative to that body size.
   */

  --jp-ui-font-scale-factor: 1.2;
  --jp-ui-font-size0: 0.83333em;
  --jp-ui-font-size1: 13px; /* Base font size */
  --jp-ui-font-size2: 1.2em;
  --jp-ui-font-size3: 1.44em;
  --jp-ui-font-family: system-ui, -apple-system, blinkmacsystemfont, 'Segoe UI',
    helvetica, arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
    'Segoe UI Symbol';

  /*
   * Use these font colors against the corresponding main layout colors.
   * In a light theme, these go from dark to light.
   */

  /* Defaults use Material Design specification */
  --jp-ui-font-color0: rgba(0, 0, 0, 1);
  --jp-ui-font-color1: rgba(0, 0, 0, 0.87);
  --jp-ui-font-color2: rgba(0, 0, 0, 0.54);
  --jp-ui-font-color3: rgba(0, 0, 0, 0.38);

  /*
   * Use these against the brand/accent/warn/error colors.
   * These will typically go from light to darker, in both a dark and light theme.
   */

  --jp-ui-inverse-font-color0: rgba(255, 255, 255, 1);
  --jp-ui-inverse-font-color1: rgba(255, 255, 255, 1);
  --jp-ui-inverse-font-color2: rgba(255, 255, 255, 0.7);
  --jp-ui-inverse-font-color3: rgba(255, 255, 255, 0.5);

  /* Content Fonts
   *
   * Content font variables are used for typography of user generated content.
   *
   * The font sizing here is done assuming that the body font size of --jp-content-font-size1
   * is applied to a parent element. When children elements, such as headings, are sized
   * in em all things will be computed relative to that body size.
   */

  --jp-content-line-height: 1.6;
  --jp-content-font-scale-factor: 1.2;
  --jp-content-font-size0: 0.83333em;
  --jp-content-font-size1: 14px; /* Base font size */
  --jp-content-font-size2: 1.2em;
  --jp-content-font-size3: 1.44em;
  --jp-content-font-size4: 1.728em;
  --jp-content-font-size5: 2.0736em;

  /* This gives a magnification of about 125% in presentation mode over normal. */
  --jp-content-presentation-font-size1: 17px;
  --jp-content-heading-line-height: 1;
  --jp-content-heading-margin-top: 1.2em;
  --jp-content-heading-margin-bottom: 0.8em;
  --jp-content-heading-font-weight: 500;

  /* Defaults use Material Design specification */
  --jp-content-font-color0: rgba(0, 0, 0, 1);
  --jp-content-font-color1: rgba(0, 0, 0, 0.87);
  --jp-content-font-color2: rgba(0, 0, 0, 0.54);
  --jp-content-font-color3: rgba(0, 0, 0, 0.38);
  --jp-content-link-color: var(--md-blue-900);
  --jp-content-font-family: system-ui, -apple-system, blinkmacsystemfont,
    'Segoe UI', helvetica, arial, sans-serif, 'Apple Color Emoji',
    'Segoe UI Emoji', 'Segoe UI Symbol';

  /*
   * Code Fonts
   *
   * Code font variables are used for typography of code and other monospaces content.
   */

  --jp-code-font-size: 13px;
  --jp-code-line-height: 1.3077; /* 17px for 13px base */
  --jp-code-padding: 5px; /* 5px for 13px base, codemirror highlighting needs integer px value */
  --jp-code-font-family-default: menlo, consolas, 'DejaVu Sans Mono', monospace;
  --jp-code-font-family: var(--jp-code-font-family-default);

  /* This gives a magnification of about 125% in presentation mode over normal. */
  --jp-code-presentation-font-size: 16px;

  /* may need to tweak cursor width if you change font size */
  --jp-code-cursor-width0: 1.4px;
  --jp-code-cursor-width1: 2px;
  --jp-code-cursor-width2: 4px;

  /* Layout
   *
   * The following are the main layout colors use in JupyterLab. In a light
   * theme these would go from light to dark.
   */

  --jp-layout-color0: white;
  --jp-layout-color1: white;
  --jp-layout-color2: var(--md-grey-200);
  --jp-layout-color3: var(--md-grey-400);
  --jp-layout-color4: var(--md-grey-600);

  /* Inverse Layout
   *
   * The following are the inverse layout colors use in JupyterLab. In a light
   * theme these would go from dark to light.
   */

  --jp-inverse-layout-color0: #111;
  --jp-inverse-layout-color1: var(--md-grey-900);
  --jp-inverse-layout-color2: var(--md-grey-800);
  --jp-inverse-layout-color3: var(--md-grey-700);
  --jp-inverse-layout-color4: var(--md-grey-600);

  /* Brand/accent */

  --jp-brand-color0: var(--md-blue-900);
  --jp-brand-color1: var(--md-blue-700);
  --jp-brand-color2: var(--md-blue-300);
  --jp-brand-color3: var(--md-blue-100);
  --jp-brand-color4: var(--md-blue-50);
  --jp-accent-color0: var(--md-green-900);
  --jp-accent-color1: var(--md-green-700);
  --jp-accent-color2: var(--md-green-300);
  --jp-accent-color3: var(--md-green-100);

  /* State colors (warn, error, success, info) */

  --jp-warn-color0: var(--md-orange-900);
  --jp-warn-color1: var(--md-orange-700);
  --jp-warn-color2: var(--md-orange-300);
  --jp-warn-color3: var(--md-orange-100);
  --jp-error-color0: var(--md-red-900);
  --jp-error-color1: var(--md-red-700);
  --jp-error-color2: var(--md-red-300);
  --jp-error-color3: var(--md-red-100);
  --jp-success-color0: var(--md-green-900);
  --jp-success-color1: var(--md-green-700);
  --jp-success-color2: var(--md-green-300);
  --jp-success-color3: var(--md-green-100);
  --jp-info-color0: var(--md-cyan-900);
  --jp-info-color1: var(--md-cyan-700);
  --jp-info-color2: var(--md-cyan-300);
  --jp-info-color3: var(--md-cyan-100);

  /* Cell specific styles */

  --jp-cell-padding: 5px;
  --jp-cell-collapser-width: 8px;
  --jp-cell-collapser-min-height: 20px;
  --jp-cell-collapser-not-active-hover-opacity: 0.6;
  --jp-cell-editor-background: var(--md-grey-100);
  --jp-cell-editor-border-color: var(--md-grey-300);
  --jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
  --jp-cell-editor-active-background: var(--jp-layout-color0);
  --jp-cell-editor-active-border-color: var(--jp-brand-color1);
  --jp-cell-prompt-width: 64px;
  --jp-cell-prompt-font-family: var(--jp-code-font-family-default);
  --jp-cell-prompt-letter-spacing: 0;
  --jp-cell-prompt-opacity: 1;
  --jp-cell-prompt-not-active-opacity: 0.5;
  --jp-cell-prompt-not-active-font-color: var(--md-grey-700);

  /* A custom blend of MD grey and blue 600
   * See https://meyerweb.com/eric/tools/color-blend/#546E7A:1E88E5:5:hex */
  --jp-cell-inprompt-font-color: #307fc1;

  /* A custom blend of MD grey and orange 600
   * https://meyerweb.com/eric/tools/color-blend/#546E7A:F4511E:5:hex */
  --jp-cell-outprompt-font-color: #bf5b3d;

  /* Notebook specific styles */

  --jp-notebook-padding: 10px;
  --jp-notebook-select-background: var(--jp-layout-color1);
  --jp-notebook-multiselected-color: var(--md-blue-50);

  /* The scroll padding is calculated to fill enough space at the bottom of the
  notebook to show one single-line cell (with appropriate padding) at the top
  when the notebook is scrolled all the way to the bottom. We also subtract one
  pixel so that no scrollbar appears if we have just one single-line cell in the
  notebook. This padding is to enable a 'scroll past end' feature in a notebook.
  */
  --jp-notebook-scroll-padding: calc(
    100% - var(--jp-code-font-size) * var(--jp-code-line-height) -
      var(--jp-code-padding) - var(--jp-cell-padding) - 1px
  );

  /* Rendermime styles */

  --jp-rendermime-error-background: #fdd;
  --jp-rendermime-table-row-background: var(--md-grey-100);
  --jp-rendermime-table-row-hover-background: var(--md-light-blue-50);

  /* Dialog specific styles */

  --jp-dialog-background: rgba(0, 0, 0, 0.25);

  /* Console specific styles */

  --jp-console-padding: 10px;

  /* Toolbar specific styles */

  --jp-toolbar-border-color: var(--jp-border-color1);
  --jp-toolbar-micro-height: 8px;
  --jp-toolbar-background: var(--jp-layout-color1);
  --jp-toolbar-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.24);
  --jp-toolbar-header-margin: 4px 4px 0 4px;
  --jp-toolbar-active-background: var(--md-grey-300);

  /* Statusbar specific styles */

  --jp-statusbar-height: 24px;

  /* Input field styles */

  --jp-input-box-shadow: inset 0 0 2px var(--md-blue-300);
  --jp-input-active-background: var(--jp-layout-color1);
  --jp-input-hover-background: var(--jp-layout-color1);
  --jp-input-background: var(--md-grey-100);
  --jp-input-border-color: var(--jp-inverse-border-color);
  --jp-input-active-border-color: var(--jp-brand-color1);
  --jp-input-active-box-shadow-color: rgba(19, 124, 189, 0.3);

  /* General editor styles */

  --jp-editor-selected-background: #d9d9d9;
  --jp-editor-selected-focused-background: #d7d4f0;
  --jp-editor-cursor-color: var(--jp-ui-font-color0);

  /* Code mirror specific styles */

  --jp-mirror-editor-keyword-color: #008000;
  --jp-mirror-editor-atom-color: #88f;
  --jp-mirror-editor-number-color: #080;
  --jp-mirror-editor-def-color: #00f;
  --jp-mirror-editor-variable-color: var(--md-grey-900);
  --jp-mirror-editor-variable-2-color: rgb(0, 54, 109);
  --jp-mirror-editor-variable-3-color: #085;
  --jp-mirror-editor-punctuation-color: #05a;
  --jp-mirror-editor-property-color: #05a;
  --jp-mirror-editor-operator-color: #a2f;
  --jp-mirror-editor-comment-color: #408080;
  --jp-mirror-editor-string-color: #ba2121;
  --jp-mirror-editor-string-2-color: #708;
  --jp-mirror-editor-meta-color: #a2f;
  --jp-mirror-editor-qualifier-color: #555;
  --jp-mirror-editor-builtin-color: #008000;
  --jp-mirror-editor-bracket-color: #997;
  --jp-mirror-editor-tag-color: #170;
  --jp-mirror-editor-attribute-color: #00c;
  --jp-mirror-editor-header-color: blue;
  --jp-mirror-editor-quote-color: #090;
  --jp-mirror-editor-link-color: #00c;
  --jp-mirror-editor-error-color: #f00;
  --jp-mirror-editor-hr-color: #999;

  /*
    RTC user specific colors.
    These colors are used for the cursor, username in the editor,
    and the icon of the user.
  */

  --jp-collaborator-color1: #ffad8e;
  --jp-collaborator-color2: #dac83d;
  --jp-collaborator-color3: #72dd76;
  --jp-collaborator-color4: #00e4d0;
  --jp-collaborator-color5: #45d4ff;
  --jp-collaborator-color6: #e2b1ff;
  --jp-collaborator-color7: #ff9de6;

  /* Vega extension styles */

  --jp-vega-background: white;

  /* Sidebar-related styles */

  --jp-sidebar-min-width: 250px;

  /* Search-related styles */

  --jp-search-toggle-off-opacity: 0.5;
  --jp-search-toggle-hover-opacity: 0.8;
  --jp-search-toggle-on-opacity: 1;
  --jp-search-selected-match-background-color: rgb(245, 200, 0);
  --jp-search-selected-match-color: black;
  --jp-search-unselected-match-background-color: var(
    --jp-inverse-layout-color0
  );
  --jp-search-unselected-match-color: var(--jp-ui-inverse-font-color0);

  /* Icon colors that work well with light or dark backgrounds */
  --jp-icon-contrast-color0: var(--md-purple-600);
  --jp-icon-contrast-color1: var(--md-green-600);
  --jp-icon-contrast-color2: var(--md-pink-600);
  --jp-icon-contrast-color3: var(--md-blue-600);

  /* Button colors */
  --jp-accept-color-normal: var(--md-blue-700);
  --jp-accept-color-hover: var(--md-blue-800);
  --jp-accept-color-active: var(--md-blue-900);
  --jp-warn-color-normal: var(--md-red-700);
  --jp-warn-color-hover: var(--md-red-800);
  --jp-warn-color-active: var(--md-red-900);
  --jp-reject-color-normal: var(--md-grey-600);
  --jp-reject-color-hover: var(--md-grey-700);
  --jp-reject-color-active: var(--md-grey-800);

  /* File or activity icons and switch semantic variables */
  --jp-jupyter-icon-color: #f37626;
  --jp-notebook-icon-color: #f37626;
  --jp-json-icon-color: var(--md-orange-700);
  --jp-console-icon-background-color: var(--md-blue-700);
  --jp-console-icon-color: white;
  --jp-terminal-icon-background-color: var(--md-grey-800);
  --jp-terminal-icon-color: var(--md-grey-200);
  --jp-text-editor-icon-color: var(--md-grey-700);
  --jp-inspector-icon-color: var(--md-grey-700);
  --jp-switch-color: var(--md-grey-400);
  --jp-switch-true-position-color: var(--md-orange-900);
}
</style>
<style type="text/css">
/* Force rendering true colors when outputing to pdf */
* {
  -webkit-print-color-adjust: exact;
}

/* Misc */
a.anchor-link {
  display: none;
}

/* Input area styling */
.jp-InputArea {
  overflow: hidden;
}

.jp-InputArea-editor {
  overflow: hidden;
}

.cm-editor.cm-s-jupyter .highlight pre {
/* weird, but --jp-code-padding defined to be 5px but 4px horizontal padding is hardcoded for pre.cm-line */
  padding: var(--jp-code-padding) 4px;
  margin: 0;

  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  color: inherit;

}

.jp-OutputArea-output pre {
  line-height: inherit;
  font-family: inherit;
}

.jp-RenderedText pre {
  color: var(--jp-content-font-color1);
  font-size: var(--jp-code-font-size);
}

/* Hiding the collapser by default */
.jp-Collapser {
  display: none;
}

@page {
    margin: 0.5in; /* Margin for each printed piece of paper */
}

@media print {
  .jp-Cell-inputWrapper,
  .jp-Cell-outputWrapper {
    display: block;
  }
}
</style>
<!-- Load mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
<!-- MathJax configuration -->
<script type="text/x-mathjax-config">
    init_mathjax = function() {
        if (window.MathJax) {
        // MathJax loaded
            MathJax.Hub.Config({
                TeX: {
                    equationNumbers: {
                    autoNumber: "AMS",
                    useLabelIds: true
                    }
                },
                tex2jax: {
                    inlineMath: [ ['$','$'], ["\\(","\\)"] ],
                    displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
                    processEscapes: true,
                    processEnvironments: true
                },
                displayAlign: 'center',
                CommonHTML: {
                    linebreaks: {
                    automatic: true
                    }
                }
            });

            MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
        }
    }
    init_mathjax();
    </script>
<!-- End of mathjax configuration --><script type="module">
  document.addEventListener("DOMContentLoaded", async () => {
    const diagrams = document.querySelectorAll(".jp-Mermaid > pre.mermaid");
    // do not load mermaidjs if not needed
    if (!diagrams.length) {
      return;
    }
    const mermaid = (await import("https://cdnjs.cloudflare.com/ajax/libs/mermaid/10.6.0/mermaid.esm.min.mjs")).default;
    const parser = new DOMParser();

    mermaid.initialize({
      maxTextSize: 100000,
      startOnLoad: false,
      fontFamily: window
        .getComputedStyle(document.body)
        .getPropertyValue("--jp-ui-font-family"),
      theme: document.querySelector("body[data-jp-theme-light='true']")
        ? "default"
        : "dark",
    });

    let _nextMermaidId = 0;

    function makeMermaidImage(svg) {
      const img = document.createElement("img");
      const doc = parser.parseFromString(svg, "image/svg+xml");
      const svgEl = doc.querySelector("svg");
      const { maxWidth } = svgEl?.style || {};
      const firstTitle = doc.querySelector("title");
      const firstDesc = doc.querySelector("desc");

      img.setAttribute("src", `data:image/svg+xml,${encodeURIComponent(svg)}`);
      if (maxWidth) {
        img.width = parseInt(maxWidth);
      }
      if (firstTitle) {
        img.setAttribute("alt", firstTitle.textContent);
      }
      if (firstDesc) {
        const caption = document.createElement("figcaption");
        caption.className = "sr-only";
        caption.textContent = firstDesc.textContent;
        return [img, caption];
      }
      return [img];
    }

    async function makeMermaidError(text) {
      let errorMessage = "";
      try {
        await mermaid.parse(text);
      } catch (err) {
        errorMessage = `${err}`;
      }

      const result = document.createElement("details");
      result.className = 'jp-RenderedMermaid-Details';
      const summary = document.createElement("summary");
      summary.className = 'jp-RenderedMermaid-Summary';
      const pre = document.createElement("pre");
      const code = document.createElement("code");
      code.innerText = text;
      pre.appendChild(code);
      summary.appendChild(pre);
      result.appendChild(summary);

      const warning = document.createElement("pre");
      warning.innerText = errorMessage;
      result.appendChild(warning);
      return [result];
    }

    async function renderOneMarmaid(src) {
      const id = `jp-mermaid-${_nextMermaidId++}`;
      const parent = src.parentNode;
      let raw = src.textContent.trim();
      const el = document.createElement("div");
      el.style.visibility = "hidden";
      document.body.appendChild(el);
      let results = null;
      let output = null;
      try {
        const { svg } = await mermaid.render(id, raw, el);
        results = makeMermaidImage(svg);
        output = document.createElement("figure");
        results.map(output.appendChild, output);
      } catch (err) {
        parent.classList.add("jp-mod-warning");
        results = await makeMermaidError(raw);
        output = results[0];
      } finally {
        el.remove();
      }
      parent.classList.add("jp-RenderedMermaid");
      parent.appendChild(output);
    }

    void Promise.all([...diagrams].map(renderOneMarmaid));
  });
</script>
<style>
  .jp-Mermaid:not(.jp-RenderedMermaid) {
    display: none;
  }

  .jp-RenderedMermaid {
    overflow: auto;
    display: flex;
  }

  .jp-RenderedMermaid.jp-mod-warning {
    width: auto;
    padding: 0.5em;
    margin-top: 0.5em;
    border: var(--jp-border-width) solid var(--jp-warn-color2);
    border-radius: var(--jp-border-radius);
    color: var(--jp-ui-font-color1);
    font-size: var(--jp-ui-font-size1);
    white-space: pre-wrap;
    word-wrap: break-word;
  }

  .jp-RenderedMermaid figure {
    margin: 0;
    overflow: auto;
    max-width: 100%;
  }

  .jp-RenderedMermaid img {
    max-width: 100%;
  }

  .jp-RenderedMermaid-Details > pre {
    margin-top: 1em;
  }

  .jp-RenderedMermaid-Summary {
    color: var(--jp-warn-color2);
  }

  .jp-RenderedMermaid:not(.jp-mod-warning) pre {
    display: none;
  }

  .jp-RenderedMermaid-Summary > pre {
    display: inline-block;
    white-space: normal;
  }
</style>
<!-- End of mermaid configuration --></head>
<body class="jp-Notebook" data-jp-theme-light="true" data-jp-theme-name="JupyterLab Light">
<main><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=b8434e83-7e0d-44c8-9018-cee571be4068">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">from</span> <span class="nn">bs4</span> <span class="kn">import</span> <span class="n">BeautifulSoup</span>
<span class="kn">import</span> <span class="nn">requests</span>

<span class="n">url</span><span class="o">=</span><span class="s1">'https://zh.tradingeconomics.com/china/exports'</span>
<span class="n">headers</span><span class="o">=</span><span class="p">{</span><span class="s1">'User-agent'</span><span class="p">:</span><span class="s1">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0'</span><span class="p">}</span>
<span class="n">res</span><span class="o">=</span><span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">url</span><span class="o">=</span><span class="n">url</span><span class="p">,</span><span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>

<span class="n">res</span><span class="o">.</span><span class="n">encoding</span> <span class="o">=</span> <span class="s1">'utf-8'</span>
<span class="n">soup</span><span class="o">=</span><span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">res</span><span class="o">.</span><span class="n">text</span><span class="p">,</span><span class="s2">"html.parser"</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">soup</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>
&lt;!DOCTYPE html&gt;

&lt;html lang="zh" xml:lang="zh"&gt;
&lt;head id="ctl00_Head1"&gt;&lt;meta charset="utf-8"/&gt;&lt;title&gt;
	中国 - 出口 | 1981-2024 数据 | 2025-2026 预测
&lt;/title&gt;&lt;meta content="当前值，历史数据，预测，统计，图表和经济日历 - 中国 - 出口. 1981-2024 数据 | 2025-2026 预测." id="metaDesc" name="description"/&gt;&lt;meta content="中国,出口,2023,2024,2025" id="metaKeyword" name="keywords"/&gt;&lt;meta clienstidmode="Static" content="zh" id="ctl00_metaLanguage" name="content-language"/&gt;&lt;meta content="width=device-width,minimum-scale=1,initial-scale=1,maximum-scale=1" name="viewport"/&gt;&lt;meta content="#333333" name="theme-color"/&gt;
&lt;link crossorigin="anonymous" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.2.3/css/bootstrap.min.css" integrity="sha512-SbiR/eusphKoMVVXysTKG/7VseWii+Y3FdHrt0EpKgpToZeemhqHeZeLWLhJutz/2ut2Vw1uQEj2MbRF+TVBUA==" referrerpolicy="no-referrer" rel="stylesheet"/&gt;
&lt;link crossorigin="anonymous" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.10.2/font/bootstrap-icons.min.css" integrity="sha512-YFENbnqHbCRmJt5d+9lHimyEMt8LKSNTMLSaHjvsclnZGICeY/0KYEeiHwD1Ux4Tcao0h60tdcMv+0GljvWyHg==" referrerpolicy="no-referrer" rel="stylesheet"/&gt;
&lt;link href="//d3fy651gv2fhd3.cloudfront.net/stylesheet.min.css?v=20240307" rel="stylesheet"/&gt;
&lt;script type="text/javascript"&gt;var TEChartSettings = {}; var TESymbol = ''; var TECountry = ''; var TECategory = ''; var TEFrequency = ''; var TELanguage = 'zh'; var TELastUpdate = '20240331000000'; var TEChartVersion = ''; var symbol = ''; var symbolType = ''; var hasCalendar = false; var isLoggedIn = false; var TEAlertsName = ''; var TEChartsDatasource = 'https://d3ii0wo49og5mi.cloudfront.net'; var IsMobile =  false; var TEChartsMeta = ''; var TEForecast = []; var TEAuthorization = ''; var TESecurify = ''; var TESecurifyUrl = ''; var TEType = ''; var TEChartUrl = '/china/exports'; var TEComparable = 0; var isAlertsLoaded = false; var IsDarkMode = false; var isPakoLoaded = false; var TEChartsToken = '20240229:nazare'; var TEObfuscationkey = 'tradingeconomics-charts-core-api-key'; var isCopyright = false&lt;/script&gt;
&lt;script type="text/javascript"&gt;var DEBUG = false;if (window.location.host.indexOf('localhost') &gt; -1) DEBUG = true;else if (window.location.href.indexOf('debug') &gt; -1) DEBUG = true;if (!DEBUG) {if (!window.console) window.console = {};var methods = ["log", "debug", "info"];for (var i = 0; i &lt; methods.length; i++) {console[methods[i]] = function () { };}}&lt;/script&gt;
&lt;link href="//d3fy651gv2fhd3.cloudfront.net/favicon.ico" rel="icon"/&gt;
&lt;script type="application/ld+json"&gt;{"@context":"https://schema.org/","@graph":[
    {"@context": "https://schema.org","@type": "Organization","url": "https://tradingeconomics.com","name": "TRADING ECONOMICS","logo": {"@type": "ImageObject","url": "https://tradingeconomics.com/images/logo.png?v=schema"}},
        {"@type": "Dataset","name": "China Exports","alternateName": "China Exports - Historical Dataset (1981-01-31/2024-02-29)","description": "当前值，历史数据，预测，统计，图表和经济日历 - 中国 - 出口. 1981-2024 数据 | 2025-2026 预测.","url":"https://tradingeconomics.com/china/exports","keywords": "中国,出口,2023,2024,2025","temporalCoverage": "1981-01-31/2024-02-29","spatialCoverage": "China",
            "creator": {"@type": "Organization","url": "https://tradingeconomics.com","name": "TRADING ECONOMICS","logo": {"@type": "ImageObject","url": "https://tradingeconomics.com/images/logo.png?v=schema"}},
            "distribution": [{"@type": "DataDownload","encodingFormat": "CSV","contentUrl": "https://tradingeconomics.com/china/exports"},{"@type": "DataDownload","encodingFormat": "JSON","contentUrl": "https://tradingeconomics.com/china/exports"},{"@type": "DataDownload","encodingFormat": "XML","contentUrl": "https://tradingeconomics.com/china/exports"},{"@type": "DataDownload","encodingFormat": "Excel","contentUrl": "https://tradingeconomics.com/china/exports"}],
            "includedInDataCatalog": {"@type": "DataCatalog","name": "TRADING ECONOMICS"},"version": "20240229","dateModified": "20240229T12:00:00.00Z", "isAccessibleForFree": true,"license" : "https://creativecommons.org/licenses/by/4.0/"
 }]}&lt;/script&gt;
&lt;link href="https://zh.tradingeconomics.com/china/exports" rel="canonical"/&gt;&lt;/head&gt;
&lt;body&gt;
&lt;script&gt;IsDarkMode=false;&lt;/script&gt;
&lt;form action="/china/exports" id="aspnetForm" method="post"&gt;
&lt;div class="aspNetHidden"&gt;
&lt;input id="__VIEWSTATE" name="__VIEWSTATE" type="hidden" value="2PWEIhtzcjo7U4oFF5C4nvRjCYMAFGz603v2ymnbcARETXUiTScRXXWViSjr44+zkeuFhjkhqDrt7Q0ojkFBTAmXrm4="/&gt;
&lt;/div&gt;
&lt;script language="Javascript" type="text/javascript"&gt;var TESymbol = 'CNFREXPD'; console.log('TESymbol:', TESymbol);var TELanguage = 'zh'; console.log('TELanguage:', TELanguage);TELastUpdate = '202403231010'; console.log('TELastUpdate:', TELastUpdate);TEChart = 'EC'; console.log('TEChart:', TEChart);var TEAlertsName= 'China Exports'; console.log('TEAlertsName:', TEAlertsName);&lt;/script&gt;&lt;script language="Javascript" type="text/javascript"&gt;TEChartUrl = 'https://d3fy651gv2fhd3.cloudfront.net/charts/china-exports.png?s=cnfrexpd&amp;v=202403231010V20230410&amp;lang=all';TECountry = 'China';TECategory = 'Exports';TEType = 'te';TEFrequency = 'Monthly';TEForecast =   [295.00,313.00,300.00,310.00];&lt;/script&gt;
&lt;div class="aspNetHidden"&gt;
&lt;input id="__VIEWSTATEGENERATOR" name="__VIEWSTATEGENERATOR" type="hidden" value="9ED6FB81"/&gt;
&lt;/div&gt;
&lt;nav class="navbar navbar-dark fixed-top" id="ctl00_NavigationUC1_ctl00_menu" role="navigation"&gt;
&lt;div class="container"&gt;
&lt;div class="navbar-header navbar-header-search" id="searchMobileHeader"&gt;
&lt;div class="d-flex justify-content-between"&gt;
&lt;a class="navbar-brand" style="width: 100%"&gt;
&lt;input autocomplete="off" class="nav-search-input-class navbar-search-2" id="thisIstheTinySearchBoxIdTag" placeholder="Search" type="text"/&gt;
&lt;/a&gt;
&lt;ul class="dropdown-menu navbar-search-1" id="thisIstheTinySearchResultsIdTag"&gt;
&lt;li&gt;
&lt;div class="container-fluid"&gt;
&lt;div class="dpTaResult" id="dpSearch-resultCnt-tiny"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="navbar-mobile-close-search"&gt;
&lt;a class="navbar-mobile-item" id="thisIsTheTinyRemoveId" noref=""&gt;&lt;i class="bi bi-x-lg"&gt;&lt;/i&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="navbar-header navbar-collapse float-end" id="mainHeader"&gt;
&lt;div class="d-flex"&gt;
&lt;button aria-controls="tesidemenuoptions" class="navbar-toggler" data-bs-target="#tesidemenu" data-bs-toggle="offcanvas" type="button"&gt;
&lt;span class="navbar-toggler-icon"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;div class="logo-banner d-flex justify-content-between float-right"&gt;
&lt;a class="navbar-brand" href="/"&gt;
&lt;svg aria-label="Trading Economics logo" height="35" version="1.1" viewbox="0 0 34.131 9.2604" width="129" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"&gt;
&lt;g fill="#858585" stroke="#858585" stroke-width=".1"&gt;&lt;path d="m1.3315 8.5517v-3.7879h2.8086v0.64079h-2.0438v0.83974h1.9017v0.6382h-1.9017v1.0309h2.1162v0.6382z"&gt;&lt;/path&gt;&lt;path d="m7.2846 7.1591 0.74156 0.23513q-0.17053 0.62012-0.56844 0.92242-0.39532 0.29972-1.0051 0.29972-0.75448 0-1.2402-0.51418-0.48576-0.51676-0.48576-1.4108 0-0.94568 0.48834-1.4676 0.48834-0.52452 1.2842-0.52452 0.69505 0 1.1291 0.41083 0.25838 0.24288 0.38757 0.69763l-0.75706 0.18087q-0.067179-0.29456-0.28164-0.46509-0.21187-0.17053-0.51676-0.17053-0.42116 0-0.68471 0.30231-0.26097 0.30231-0.26097 0.97927 0 0.7183 0.25838 1.0232 0.25838 0.30489 0.67179 0.30489 0.30489 0 0.52452-0.19379 0.21962-0.19379 0.31523-0.60978z"&gt;&lt;/path&gt;&lt;path d="m8.5275 6.681q0-0.57878 0.17312-0.97152 0.12919-0.28939 0.3514-0.51935 0.22479-0.22996 0.49093-0.34106 0.35398-0.14986 0.81649-0.14986 0.83716 0 1.3384 0.51935 0.50385 0.51935 0.50385 1.4444 0 0.91726-0.49868 1.4366-0.49868 0.51676-1.3333 0.51676-0.84491 0-1.3436-0.51418-0.49868-0.51676-0.49868-1.4211zm0.78807-0.025838q0 0.64337 0.29714 0.97669 0.29714 0.33073 0.75448 0.33073 0.45734 0 0.74931-0.32815 0.29456-0.33073 0.29456-0.9896 0-0.65112-0.2868-0.97152-0.28422-0.32039-0.75706-0.32039-0.47284 0-0.76223 0.32556-0.28939 0.32298-0.28939 0.97669z"&gt;&lt;/path&gt;&lt;path d="m12.806 8.5517v-3.7879h0.74414l1.5503 2.5296v-2.5296h0.71055v3.7879h-0.7674l-1.527-2.4701v2.4701z"&gt;&lt;/path&gt;&lt;path d="m16.465 6.681q0-0.57878 0.17312-0.97152 0.12919-0.28939 0.3514-0.51935 0.22479-0.22996 0.49093-0.34106 0.35398-0.14986 0.81649-0.14986 0.83716 0 1.3384 0.51935 0.50384 0.51935 0.50384 1.4444 0 0.91726-0.49868 1.4366-0.49868 0.51676-1.3333 0.51676-0.84491 0-1.3436-0.51418-0.49868-0.51676-0.49868-1.4211zm0.78807-0.025838q0 0.64337 0.29714 0.97669 0.29714 0.33073 0.75448 0.33073t0.74931-0.32815q0.29456-0.33073 0.29456-0.9896 0-0.65112-0.2868-0.97152-0.28422-0.32039-0.75706-0.32039t-0.76223 0.32556q-0.28939 0.32298-0.28939 0.97669z"&gt;&lt;/path&gt;&lt;path d="m20.726 8.5517v-3.7879h1.1446l0.6873 2.5838 0.67955-2.5838h1.1472v3.7879h-0.71055v-2.9817l-0.75189 2.9817h-0.73639l-0.74931-2.9817v2.9817z"&gt;&lt;/path&gt;&lt;path d="m25.121 8.5517v-3.7879h0.76481v3.7879z"&gt;&lt;/path&gt;&lt;path d="m29.038 7.1591 0.74156 0.23513q-0.17053 0.62012-0.56844 0.92242-0.39532 0.29972-1.0051 0.29972-0.75448 0-1.2402-0.51418-0.48576-0.51676-0.48576-1.4108 0-0.94568 0.48834-1.4676 0.48834-0.52452 1.2842-0.52452 0.69505 0 1.1291 0.41083 0.25838 0.24288 0.38757 0.69763l-0.75706 0.18087q-0.06718-0.29456-0.28164-0.46509-0.21187-0.17053-0.51676-0.17053-0.42116 0-0.68471 0.30231-0.26097 0.30231-0.26097 0.97927 0 0.7183 0.25838 1.0232 0.25838 0.30489 0.67179 0.30489 0.30489 0 0.52452-0.19379 0.21962-0.19379 0.31523-0.60978z"&gt;&lt;/path&gt;&lt;path d="m30.242 7.3193 0.74414-0.072347q0.06718 0.37465 0.2713 0.55035 0.2067 0.1757 0.55552 0.1757 0.36949 0 0.55552-0.15503 0.18862-0.15761 0.18862-0.3669 0-0.13436-0.0801-0.22738-0.077514-0.095602-0.27388-0.16536-0.13436-0.046509-0.61237-0.16536-0.61495-0.15245-0.863-0.37465-0.34882-0.31264-0.34882-0.76223 0-0.28939 0.16278-0.54002 0.16536-0.25321 0.47284-0.38499 0.31006-0.13178 0.74672-0.13178 0.71314 0 1.0723 0.31264 0.36174 0.31264 0.37982 0.83457l-0.76481 0.03359q-0.04909-0.29197-0.21187-0.41858-0.1602-0.12919-0.48317-0.12919-0.33331 0-0.52193 0.13694-0.12144 0.08785-0.12144 0.23513 0 0.13436 0.11369 0.22996 0.14469 0.12144 0.7028 0.25321t0.82424 0.27389q0.26872 0.13953 0.41858 0.38499 0.15244 0.24288 0.15244 0.60203 0 0.32556-0.18087 0.60978-0.18087 0.28422-0.5116 0.42375-0.33073 0.13694-0.82424 0.13694-0.7183 0-1.1033-0.33073-0.38499-0.33331-0.45992-0.96893z"&gt;&lt;/path&gt;&lt;/g&gt;
&lt;g fill="#ddd" stroke="#ddd" stroke-width=".1"&gt;&lt;path d="m1.4629 4.2437v-2.8324h-1.0116v-0.57671h2.7091v0.57671h-1.0092v2.8324z"&gt;&lt;/path&gt;&lt;path d="m3.607 4.2437v-3.4091h1.4487q0.54648 0 0.79297 0.093018 0.24882 0.090692 0.39765 0.32556 0.14883 0.23487 0.14883 0.53718 0 0.3837-0.22557 0.63484-0.22557 0.24882-0.67438 0.31393 0.22324 0.13022 0.36742 0.28603 0.1465 0.1558 0.393 0.55345l0.41625 0.66508h-0.82321l-0.49764-0.74182q-0.2651-0.39765-0.36277-0.49997-0.097668-0.10464-0.20696-0.14185-0.1093-0.039532-0.34649-0.039532h-0.13953v1.4232zm0.68833-1.9673h0.50927q0.49532 0 0.61857-0.041858t0.19301-0.14418q0.069763-0.10232 0.069763-0.2558 0-0.17208-0.093018-0.27673-0.090692-0.10697-0.25812-0.13488-0.083716-0.011627-0.50229-0.011627h-0.53718z"&gt;&lt;/path&gt;&lt;path d="m10.118 4.2437h-0.74879l-0.29766-0.77437h-1.3627l-0.28138 0.77437h-0.73019l1.3278-3.4091h0.72786zm-1.2674-1.3488-0.46974-1.265-0.46044 1.265z"&gt;&lt;/path&gt;&lt;path d="m10.481 0.8346h1.2581q0.42556 0 0.6488 0.065112 0.29998 0.088367 0.51392 0.31393 0.21394 0.22557 0.32556 0.55345 0.11162 0.32556 0.11162 0.8046 0 0.4209-0.10464 0.72554-0.1279 0.37207-0.36509 0.60229-0.17906 0.17441-0.48369 0.27208-0.22789 0.072089-0.60926 0.072089h-1.2953zm0.68833 0.57671v2.258h0.51392q0.28835 0 0.41625-0.032556 0.16743-0.041858 0.27673-0.14185 0.11162-0.099994 0.18138-0.32789 0.06976-0.23022 0.06976-0.62554t-0.06976-0.60694-0.19534-0.33021q-0.12557-0.1186-0.31858-0.16046-0.14418-0.032556-0.56508-0.032556z"&gt;&lt;/path&gt;&lt;path d="m13.902 4.2437v-3.4091h0.68833v3.4091z"&gt;&lt;/path&gt;&lt;path d="m15.253 4.2437v-3.4091h0.66973l1.3953 2.2766v-2.2766h0.6395v3.4091h-0.69066l-1.3743-2.2231v2.2231z"&gt;&lt;/path&gt;&lt;path d="m20.271 2.9903v-0.57438h1.4836v1.3581q-0.21627 0.20929-0.62787 0.36974-0.40928 0.15813-0.83018 0.15813-0.53485 0-0.9325-0.22324-0.39765-0.22557-0.59764-0.64182-0.19999-0.41858-0.19999-0.90925 0-0.53253 0.22324-0.94645 0.22324-0.41393 0.65345-0.63484 0.32789-0.16976 0.81623-0.16976 0.63484 0 0.99064 0.26743 0.35812 0.2651 0.46044 0.73484l-0.68368 0.1279q-0.072088-0.25115-0.27208-0.39532-0.19766-0.1465-0.49532-0.1465-0.45114 0-0.71856 0.28603-0.2651 0.28603-0.2651 0.84879 0 0.60694 0.26975 0.91157 0.26975 0.30231 0.70693 0.30231 0.21627 0 0.43253-0.083716 0.21859-0.086041 0.3744-0.20696v-0.43253z"&gt;&lt;/path&gt;&lt;/g&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;div class="d-flex align-items-center nav-options"&gt;
&lt;div class="d-flex align-items-center nav-entry-link-group"&gt;
&lt;a class="nav-entry-link" href="/calendar"&gt;&lt;span class="ms-2 d-none d-lg-inline-flex"&gt;日历&lt;/span&gt;&lt;/a&gt;
&lt;div class="dropdown"&gt;
&lt;a class="dropdown d-flex nav-entry-link" data-bs-toggle="dropdown" href="#"&gt;&lt;span class="ms-2 d-none d-lg-inline-flex"&gt;市场&lt;/span&gt;&lt;/a&gt;
&lt;ul class="dropdown-menu nav-dropdown-menu"&gt;
&lt;li class="dropdown-item nav-dropdown-item"&gt;&lt;a href="/commodities"&gt;商品&lt;/a&gt;&lt;/li&gt;
&lt;li class="dropdown-item nav-dropdown-item"&gt;&lt;a href="/currencies"&gt;币种&lt;/a&gt;&lt;/li&gt;
&lt;li class="dropdown-item nav-dropdown-item"&gt;&lt;a href="/stocks"&gt;股票&lt;/a&gt;&lt;/li&gt;
&lt;li class="dropdown-item nav-dropdown-item"&gt;&lt;a href="/bonds"&gt;债券&lt;/a&gt;&lt;/li&gt;
&lt;li class="dropdown-item nav-dropdown-item"&gt;&lt;a href="/crypto"&gt;加密货币&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;a class="nav-entry-link" href="/indicators"&gt;&lt;span class="ms-2 d-none d-lg-inline-flex"&gt;指标&lt;/span&gt;&lt;/a&gt;
&lt;a class="nav-entry-link" href="/countries"&gt;&lt;span class="ms-2 d-none d-lg-inline-flex"&gt;国家&lt;/span&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div aria-labelledby="tesidemenuoptions" class="offcanvas offcanvas-start" id="tesidemenu" tabindex="-1"&gt;
&lt;div class="offcanvas-header"&gt;
&lt;h5 class="offcanvas-title" id="offcanvasWithBothOptionsLabel"&gt;&lt;/h5&gt;
&lt;button aria-label="Close" class="btn-close" data-bs-dismiss="offcanvas" type="button"&gt;&lt;/button&gt;
&lt;/div&gt;
&lt;div class="offcanvas-body"&gt;
&lt;div class="row navbar-nav-scroll" style="--bs-scroll-height: 95vh;"&gt;
&lt;div class="accordion" id="accordionNavbar"&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header menu-main-option"&gt;&lt;a class="nav-link accordion-button navmenu-mobile-item" href="/calendar" target="_self"&gt;&lt;i class="bi bi-calendar3 me-2"&gt;&lt;/i&gt;日历&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header menu-main-option d-flex align-items-center"&gt;
&lt;button aria-controls="collapseTwo" aria-expanded="false" class="accordion-button navmenu-mobile-item collapsed" data-bs-target="#collapseMarkets" data-bs-toggle="collapse" type="button"&gt;
&lt;i class="bi bi-arrow-down-up me-2"&gt;&lt;/i&gt;市场
                                    &lt;i class="bi bi-caret-up-fill ms-auto caret-toggle"&gt;&lt;/i&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="accordion-collapse collapse show" data-bs-parent="#accordionNavbar" id="collapseMarkets"&gt;
&lt;div class="accordion-body mobile-accordion-body"&gt;
&lt;ul class="nav navbar-nav navbarMobile"&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/currencies" target="_self"&gt;币种&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/stocks" target="_self"&gt;股票&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/commodities" target="_self"&gt;商品&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/bonds" target="_self"&gt;债券&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/crypto" target="_self"&gt;加密货币&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/earnings" target="_self"&gt;收益&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/holidays" target="_self"&gt;假期&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header menu-main-option d-flex align-items-center"&gt;
&lt;button aria-controls="collapseTwo" aria-expanded="false" class="accordion-button navmenu-mobile-item collapsed" data-bs-target="#collapseCountries" data-bs-toggle="collapse" type="button"&gt;
&lt;i class="bi bi-globe me-2"&gt;&lt;/i&gt;国家&lt;i class="bi bi-caret-down-fill ms-auto caret-toggle"&gt;&lt;/i&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordionNavbar" id="collapseCountries"&gt;
&lt;div class="accordion-body mobile-accordion-body"&gt;
&lt;ul class="nav navbar-nav navbarMobile"&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/united-states/indicators" target="_self"&gt;美国&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/united-kingdom/indicators" target="_self"&gt;英国&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/euro-area/indicators" target="_self"&gt;欧元区&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/australia/indicators" target="_self"&gt;澳大利亚&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/canada/indicators" target="_self"&gt;加拿大&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/japan/indicators" target="_self"&gt;日本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/china/indicators" target="_self"&gt;中国&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/brazil/indicators" target="_self"&gt;巴西&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/russia/indicators" target="_self"&gt;俄罗斯&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/india/indicators" target="_self"&gt;印度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/countries" target="_self"&gt;&lt;i class="bi bi-plus-square"&gt;&lt;/i&gt; 更多 国家&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header menu-main-option d-flex align-items-center"&gt;
&lt;button aria-controls="collapseTwo" aria-expanded="false" class="accordion-button navmenu-mobile-item collapsed" data-bs-target="#collapseIndicators" data-bs-toggle="collapse" type="button"&gt;
&lt;i class="bi bi-bar-chart-fill me-2"&gt;&lt;/i&gt;指标
                                    &lt;i class="bi bi-caret-down-fill ms-auto caret-toggle"&gt;&lt;/i&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordionNavbar" id="collapseIndicators"&gt;
&lt;div class="accordion-body mobile-accordion-body"&gt;
&lt;ul class="nav navbar-nav navbarMobile"&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/interest-rate" target="_self"&gt;利率&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/inflation-rate" target="_self"&gt;通货膨胀率&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/unemployment-rate" target="_self"&gt;失业率&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/gdp-growth-rate" target="_self"&gt;国内生产总值增长率&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/gdp-per-capita" target="_self"&gt;人均国内生产总值&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/current-account-to-gdp" target="_self"&gt;经常账户&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/gold-reserves" target="_self"&gt;黄金储备&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/government-debt-to-gdp" target="_self"&gt;政府债务&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/crude-oil-production" target="_self"&gt;原油产量&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/gasoline-prices" target="_self"&gt;汽油价格&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/country-list/rating" target="_self"&gt;信用评级&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/indicators" target="_self"&gt;&lt;i class="bi bi-plus-square"&gt;&lt;/i&gt; 更多 指标&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header menu-main-option d-flex align-items-center"&gt;
&lt;button aria-controls="collapseTwo" aria-expanded="false" class="accordion-button navmenu-mobile-item collapsed" data-bs-target="#collapseForecasts" data-bs-toggle="collapse" type="button"&gt;
&lt;i class="bi bi-graph-down-arrow me-2"&gt;&lt;/i&gt;预测
                                    &lt;i class="bi bi-caret-down-fill ms-auto caret-toggle"&gt;&lt;/i&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordionNavbar" id="collapseForecasts"&gt;
&lt;div class="accordion-body mobile-accordion-body"&gt;
&lt;ul class="nav navbar-nav navbarMobile"&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecasts"&gt;国家&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/indicators?g=forecast"&gt;指标&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecast/currency"&gt;币种&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecast/stock-market"&gt;股票&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecast/commodity"&gt;商品&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecast/government-bond-10y"&gt;债券&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="/forecast/crypto"&gt;加密货币&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item d-block d-sm-none"&gt;
&lt;div class="accordion-header menu-main-option d-flex align-items-center"&gt;
&lt;button aria-controls="collapseTwo" aria-expanded="false" class="accordion-button navmenu-mobile-item collapsed" data-bs-target="#collapseApps" data-bs-toggle="collapse" type="button"&gt;
&lt;i class="bi bi-phone me-2"&gt;&lt;/i&gt;Apps
                                &lt;i class="bi bi-caret-down-fill ms-auto caret-toggle"&gt;&lt;/i&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordionNavbar" id="collapseApps"&gt;
&lt;div class="accordion-body mobile-accordion-body"&gt;
&lt;ul class="nav navbar-nav navbarMobile"&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="https://itunes.apple.com/us/app/trading-economics/id1142178921?mt=8" target="_self"&gt;App Store&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="https://play.google.com/store/apps/details?id=com.tradingeconomics.calendar" target="_self"&gt;Google Play&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="navmobile-link nav-link" href="https://www.twitter.com/teconomics" target="_self"&gt;Twitter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;style&gt;
    .form-switch {
        width: 3.5em !important;
        height: 2em !important
    }
    .bi-sun-fill {
        font-size: 12px;
        color: #ddd
    }
    .bi-moon-fill {
        font-size: 10px;
        color: #333
    }
    .darkmode-toggle-container {
        width: auto;
        padding: 0px;
        margin-left: 0px;
        margin-top: 0px
    }
    .form-check-div-sun {
        width: 20px;
        margin-bottom: 2px;
        margin-left: -52px;
        position: relative
    }
    .form-check-div-moon {
        width: 20px;
        margin-bottom: 3px;
        margin-left: 3px;
        position: relative
    }
&lt;/style&gt;
&lt;div class="accordion-item"&gt;
&lt;div class="accordion-header d-flex align-items-center darkmode-toggle-container" style="padding: 10px 0px 10px 20px !important"&gt;
&lt;div class="form-check form-switch darkmode-form-switch"&gt;
&lt;input class="form-check-input p-1" id="flexSwitchCheckChecked" role="button" type="checkbox"/&gt;
&lt;/div&gt;
&lt;div class="form-check-div-sun"&gt;
&lt;label class="form-check-label form-check-label-sun p-1 d-inline" for="flexSwitchCheckChecked"&gt;&lt;i class="bi bi-sun-fill"&gt;&lt;/i&gt;&lt;/label&gt;
&lt;/div&gt;
&lt;div class="form-check-div-moon"&gt;
&lt;label class="form-check-label form-check-label-moon p-1 d-inline" for="flexSwitchCheckChecked"&gt;&lt;i class="bi bi-moon-fill"&gt;&lt;/i&gt;&lt;/label&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;script&gt;
    function SetTheme(isDark) {
        console.log('Changing theme', isDark);
        if (IsDarkMode != isDark) {
            IsDarkMode = isDark;
            document.body.classList.toggle("dark-theme");
            // Set cookie
            const d = new Date();
            d.setTime(d.getTime() + (365 * 24 * 60 * 60 * 1000));
            let expires = "expires=" + d.toUTCString();
            document.cookie = "IsDarkMode" + "=" + IsDarkMode + ";" + expires + ";path=/";
            IsDarkMode ? ga('event', 'te_darkmode_on') : ga('event', 'te_darkmode_off');
            window.location.reload();
        }
    }
    document.addEventListener('DOMContentLoaded', function () {
        let checkbox = document.getElementById("flexSwitchCheckChecked");
        let sundiv = document.getElementsByClassName("form-check-label-sun")[0];
        let moondiv = document.getElementsByClassName("form-check-label-moon")[0];

        if (IsDarkMode) {
            sundiv.classList.add("d-none");
            moondiv.classList.remove("d-none");
        } else {
            moondiv.classList.add("d-none");
            sundiv.classList.remove("d-none");
        }
        checkbox.checked = IsDarkMode;
    });



    document.getElementById("flexSwitchCheckChecked").addEventListener("change", function () {
        SetTheme(!IsDarkMode)
    });

&lt;/script&gt;
&lt;div class="accordion-item d-block d-md-none" style="border: none"&gt;
&lt;div class="accordion-header accordion-last-item" style="padding: 30px 0px !important;"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/nav&gt;
&lt;script&gt;
    document.addEventListener('DOMContentLoaded', function () {
        let accordionHeaders = document.querySelectorAll('.menu-main-option');

        accordionHeaders.forEach(function (header) {
            header.addEventListener('click', function () {
                let caretIcon = header.querySelector('.caret-toggle');

                let allCaretIcons = document.querySelectorAll('.menu-main-option .caret-toggle');

                allCaretIcons.forEach(function (icon) {
                    if (icon !== caretIcon) {
                        icon.classList.remove('bi-caret-up-fill');
                        icon.classList.add('bi-caret-down-fill');
                    }
                });
                caretIcon.classList.toggle('bi-caret-down-fill');
                caretIcon.classList.toggle('bi-caret-up-fill');
            });
        });
    });
&lt;/script&gt;
&lt;style&gt;body {padding-top: 140px;}.pagemenu {top: 50px;}.pagetabs {top: 90px;}.navbar-default .navbar-nav&gt;.active&gt;a{ background-color: whitesmoke;} .navbar .navbar-expand-lg&gt;.active, .navbar .navbar-expand-lg&gt;.active&gt;a{background-color: #f5f5f5;} .navbar .navbar-expand-lg&gt;li:hover, .navbar .navbar-expand-lg&gt;li:hover&gt;a{background-color: #fff;} .nav-link:focus{color: #000;}&lt;/style&gt;
&lt;style&gt;.title-notes {padding-left: 10px;font-size: 80%;padding-top: 3px;font-weight:lighter;}&lt;/style&gt;
&lt;div id="ctl00_ctl06_pageMenu"&gt;
&lt;div class="pagemenu"&gt;
&lt;div class="container"&gt;
&lt;div class="row"&gt;
&lt;div class="col-xl-12" style="display: flex; flex-direction: row"&gt;
&lt;h1 style="width: 100%"&gt;&lt;span class="title-indicator"&gt;中国 - 出口&lt;/span&gt;&lt;span class="title-notes hidden-sm hidden-md hidden-xs"&gt;1981-2024 数据 | 2025-2026 预测&lt;/span&gt;&lt;/h1&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="pagetabs" id="ctl00_ctl06_pageTabs"&gt;
&lt;div class="container"&gt;
&lt;ul class="nav nav-tabs" id="pagemenutabs" style="border-bottom: none;"&gt;
&lt;li class="nav-item scroll-top-on-click"&gt;
&lt;a class="scroll-top-on-click" data-bs-target="#historical-desc" data-bs-toggle="tab" href="#historical"&gt;
                        摘要 
                         
                    &lt;/a&gt;
&lt;/li&gt;
&lt;li class="nav-item"&gt;
&lt;a class="" href="" id="menu-download-btn"&gt;
                        下载 
                         
                    &lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="container"&gt;
&lt;div class="row"&gt;
&lt;div class="col-xl-8 col-lg-8" role="main"&gt;
&lt;style&gt;.te-title-footer {border: 1px solid #dddd;padding:10px; background-color: #f5f5f5;font-size: 16px;}.te-description-footer {border: 1px solid #dddd;padding:20px; margin-top: 20px;}&lt;/style&gt;
&lt;div id="ctl00_ContentPlaceHolder1_ctl00_Panel1"&gt;
&lt;div class="tab-content te-tab-content"&gt;
&lt;div class="tab-pane" id="alerts-desc" role="tabpanel"&gt;&lt;div id="alerts-chart" style="padding: 5px 15px 5px 15px;display: inline-block; width: 100%;"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div id="download-message-panel"&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;style&gt;.chart-link {cursor: pointer; }.te-chart {border: solid 1px #f5f5f5;} .te-chart-nav { padding: 10px 0px; background-color: #f5f5f5;border: solid 1px #ddd;}&lt;/style&gt;
&lt;div id="UpdatePanelChart"&gt;
&lt;div id="chart"&gt;&lt;div id="trading_chart" style="position: relative; height: 450px"&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div style="text-align: right; width: 100%; font-size: 11px;"&gt;&lt;a href="/contact.aspx?subject=charts+/china/exports" target="_blank"&gt;Feedback&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;div id="ctl00_ContentPlaceHolder1_ctl00_ctl00_PanelPeers"&gt;
&lt;br/&gt;
&lt;div class="card"&gt;
&lt;div class="table-responsive"&gt;
&lt;table class="table table-hover"&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style="text-align: left;"&gt;&lt;/th&gt;
&lt;th&gt;
                            近期数据&lt;/th&gt;
&lt;th&gt;
                            前次数据&lt;/th&gt;
&lt;th&gt;
                            单位&lt;/th&gt;
&lt;th&gt;
                            参考日期&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tr class="datatable-row"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/auto-exports"&gt;
                                    Passanger Car Exports
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;388179.00&lt;/td&gt;
&lt;td&gt;448546.00&lt;/td&gt;
&lt;td&gt;
&lt;/td&gt;
&lt;td&gt;Dec 2023&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row-alternating"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/balance-of-trade"&gt;
                                    贸易差额
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;39.71&lt;/td&gt;
&lt;td&gt;85.46&lt;/td&gt;
&lt;td&gt;
                                美元 -  10亿&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/electric-car-exports"&gt;
                                    电动汽车出口
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;112502.00&lt;/td&gt;
&lt;td&gt;135719.00&lt;/td&gt;
&lt;td&gt;
&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row-alternating"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/exports"&gt;
                                    出口
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;220.28&lt;/td&gt;
&lt;td&gt;307.73&lt;/td&gt;
&lt;td&gt;
                                美元 -  10亿&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/exports-yoy"&gt;
                                    出口（年）
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;5.60&lt;/td&gt;
&lt;td&gt;8.20&lt;/td&gt;
&lt;td&gt;
                                %&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row-alternating"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/imports"&gt;
                                    进口
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;180.57&lt;/td&gt;
&lt;td&gt;222.28&lt;/td&gt;
&lt;td&gt;
                                美元 -  10亿&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/imports-yoy"&gt;
                                    进口（年）
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;-8.20&lt;/td&gt;
&lt;td&gt;15.40&lt;/td&gt;
&lt;td&gt;
                                %&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="datatable-row-alternating"&gt;
&lt;td style="padding-left: 10px; text-align: left;"&gt;
&lt;a href="/china/terms-of-trade"&gt;
                                    贸易条款
                                &lt;/a&gt;
&lt;/td&gt;
&lt;td&gt;89.89&lt;/td&gt;
&lt;td&gt;92.49&lt;/td&gt;
&lt;td&gt;
                                积分&lt;/td&gt;
&lt;td&gt;Feb 2024&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;div class="card-footer"&gt;
&lt;a href="/china/indicators"&gt;
&lt;div class="btn btn-outline-secondary"&gt;
&lt;i class="bi bi-plus-lg"&gt;&lt;/i&gt;
&lt;/div&gt;
&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;div id="ctl00_ContentPlaceHolder1_ctl00_ctl01_Panel1"&gt;
&lt;div class="card"&gt;
&lt;div class="card-header"&gt;中国 - 出口&lt;/div&gt;
&lt;div class="card-body" style="text-align: justify;"&gt;出口一直是支持中国经济快速扩张的重要因素。在过去几年中，机械和运输设备占据了总出口的近一半，特别是电气机械、仪器和家用电器（14%）、电信和声音录制和重播设备（12%）、办公机器和自动数据处理机器（8%）以及广义工业机械和设备以及机械零件（5%）。其他重要的出口类别包括：杂项制成品（23%）、按材料分类的制成品（16%）如纺织纱线、织物、成衣（5%）、金属制成品（4%）和铁和钢铁（2%）；化学品及相关产品（6%）；以及食品和活鲜动物（3%）。欧盟和美国是中国出口的最大目的地，占超过15%，其后是香港、日本、韩国、越南、德国、印度和荷兰（3%）。 当前值，历史数据，预测，统计，图表和经济日历 - 中国 - 出口.&lt;/div&gt;
&lt;div class="table-responsive"&gt;
&lt;table class="table" style="margin-bottom: 0px;"&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;
                                    现值&lt;/th&gt;
&lt;th&gt;
                                    前次数据&lt;/th&gt;
&lt;th&gt;
                                    最高&lt;/th&gt;
&lt;th&gt;
                                    最低&lt;/th&gt;
&lt;th&gt;
                                    日期&lt;/th&gt;
&lt;th&gt;
                                    单位&lt;/th&gt;
&lt;th&gt;
                                    频率&lt;/th&gt;
&lt;th&gt;
&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;220.28&lt;/td&gt;
&lt;td&gt;307.73&lt;/td&gt;
&lt;td&gt;339.66&lt;/td&gt;
&lt;td&gt;1.25&lt;/td&gt;
&lt;td&gt;1981 - 2024&lt;/td&gt;
&lt;td&gt;
                        美元 -  10亿&lt;/td&gt;
&lt;td&gt;
                        每月一次&lt;/td&gt;
&lt;td&gt;
&lt;div style="max-width: 150px; overflow: hidden;"&gt;
                            Current Prices, NSA
                        &lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id="ctl00_ContentPlaceHolder1_ctl00_ctl01_Panel2"&gt;
&lt;div class="card"&gt;
&lt;div class="card-body" style="text-align: justify"&gt;
&lt;a href="http://zh.tradingeconomics.com/country-list/exports"&gt;&lt;i class="bi bi-globe"&gt;&lt;/i&gt; 出口 - 国家&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="col-xl-4 col-lg-4" id="ctl00_rightSideMenu"&gt;
&lt;style&gt;#sidebar {padding-left: 2px; padding-right: 2px;}  #sidebar .accordion-header{border-radius: 0;}&lt;/style&gt;
&lt;div id="sidebar"&gt;
&lt;div id="PanelAllMenus"&gt;
&lt;div id="ctl00_LeftSideMenuContainer1_ctl00_countrySelectionPanel" style="padding-bottom: 5px;"&gt;
&lt;select class="form-select" id="SelectCountries" onchange="window.location=this.options[this.selectedIndex].value"&gt;
&lt;option selected="selected" value=""&gt;
         中国
    &lt;/option&gt;
&lt;option value="/united-states/indicators"&gt;美国&lt;/option&gt;
&lt;option value="/united-kingdom/indicators"&gt;英国&lt;/option&gt;
&lt;option value="/euro-area/indicators"&gt;欧元区&lt;/option&gt;
&lt;option value="/china/indicators"&gt;中国&lt;/option&gt;
&lt;option value="/afghanistan/indicators"&gt;阿富汗&lt;/option&gt;
&lt;option value="/albania/indicators"&gt;阿尔巴尼亚&lt;/option&gt;
&lt;option value="/algeria/indicators"&gt;阿尔及利亚&lt;/option&gt;
&lt;option value="/andorra/indicators"&gt;安道​​尔&lt;/option&gt;
&lt;option value="/angola/indicators"&gt;安哥拉&lt;/option&gt;
&lt;option value="/antigua-and-barbuda/indicators"&gt;安提瓜和巴布达&lt;/option&gt;
&lt;option value="/argentina/indicators"&gt;阿根廷&lt;/option&gt;
&lt;option value="/armenia/indicators"&gt;亚美尼亚&lt;/option&gt;
&lt;option value="/aruba/indicators"&gt;阿鲁巴&lt;/option&gt;
&lt;option value="/australia/indicators"&gt;澳大利亚&lt;/option&gt;
&lt;option value="/austria/indicators"&gt;奥地利&lt;/option&gt;
&lt;option value="/azerbaijan/indicators"&gt;阿塞拜疆&lt;/option&gt;
&lt;option value="/bahamas/indicators"&gt;巴哈马&lt;/option&gt;
&lt;option value="/bahrain/indicators"&gt;巴林&lt;/option&gt;
&lt;option value="/bangladesh/indicators"&gt;孟加拉国&lt;/option&gt;
&lt;option value="/barbados/indicators"&gt;巴巴多斯&lt;/option&gt;
&lt;option value="/belarus/indicators"&gt;白俄罗斯&lt;/option&gt;
&lt;option value="/belgium/indicators"&gt;比利时&lt;/option&gt;
&lt;option value="/belize/indicators"&gt;伯利兹&lt;/option&gt;
&lt;option value="/benin/indicators"&gt;贝宁&lt;/option&gt;
&lt;option value="/bermuda/indicators"&gt;百慕大&lt;/option&gt;
&lt;option value="/bhutan/indicators"&gt;不丹&lt;/option&gt;
&lt;option value="/bolivia/indicators"&gt;玻利维亚&lt;/option&gt;
&lt;option value="/bosnia-and-herzegovina/indicators"&gt;Bosnia&lt;/option&gt;
&lt;option value="/botswana/indicators"&gt;博茨瓦纳&lt;/option&gt;
&lt;option value="/brazil/indicators"&gt;巴西&lt;/option&gt;
&lt;option value="/brunei/indicators"&gt;文莱&lt;/option&gt;
&lt;option value="/bulgaria/indicators"&gt;保加利亚&lt;/option&gt;
&lt;option value="/burkina-faso/indicators"&gt;布基纳法索&lt;/option&gt;
&lt;option value="/burundi/indicators"&gt;布隆迪&lt;/option&gt;
&lt;option value="/cambodia/indicators"&gt;柬埔寨&lt;/option&gt;
&lt;option value="/cameroon/indicators"&gt;喀麦隆&lt;/option&gt;
&lt;option value="/canada/indicators"&gt;加拿大&lt;/option&gt;
&lt;option value="/cape-verde/indicators"&gt;佛得角&lt;/option&gt;
&lt;option value="/cayman-islands/indicators"&gt;开曼群岛&lt;/option&gt;
&lt;option value="/central-african-republic/indicators"&gt;中非共和国&lt;/option&gt;
&lt;option value="/chad/indicators"&gt;乍得&lt;/option&gt;
&lt;option value="/channel-islands/indicators"&gt;海峡群岛&lt;/option&gt;
&lt;option value="/chile/indicators"&gt;智利&lt;/option&gt;
&lt;option value="/china/indicators"&gt;中国&lt;/option&gt;
&lt;option value="/colombia/indicators"&gt;哥伦比亚&lt;/option&gt;
&lt;option value="/comoros/indicators"&gt;科摩罗&lt;/option&gt;
&lt;option value="/congo/indicators"&gt;刚果&lt;/option&gt;
&lt;option value="/costa-rica/indicators"&gt;哥斯达黎加&lt;/option&gt;
&lt;option value="/cote-d-ivoire/indicators"&gt;Cote d Ivoire&lt;/option&gt;
&lt;option value="/croatia/indicators"&gt;克罗地亚&lt;/option&gt;
&lt;option value="/cuba/indicators"&gt;古巴&lt;/option&gt;
&lt;option value="/cyprus/indicators"&gt;塞浦路斯&lt;/option&gt;
&lt;option value="/czech-republic/indicators"&gt;捷克共和国&lt;/option&gt;
&lt;option value="/denmark/indicators"&gt;丹麦&lt;/option&gt;
&lt;option value="/djibouti/indicators"&gt;吉布提&lt;/option&gt;
&lt;option value="/dominica/indicators"&gt;多米尼加&lt;/option&gt;
&lt;option value="/dominican-republic/indicators"&gt;多明尼加共和国&lt;/option&gt;
&lt;option value="/east-asia-and-pacific/indicators"&gt;东亚和太平洋地区&lt;/option&gt;
&lt;option value="/east-timor/indicators"&gt;东帝汶&lt;/option&gt;
&lt;option value="/ecuador/indicators"&gt;厄瓜多尔&lt;/option&gt;
&lt;option value="/egypt/indicators"&gt;埃及&lt;/option&gt;
&lt;option value="/el-salvador/indicators"&gt;萨尔瓦多&lt;/option&gt;
&lt;option value="/equatorial-guinea/indicators"&gt;赤道几内亚&lt;/option&gt;
&lt;option value="/eritrea/indicators"&gt;厄立特里亚&lt;/option&gt;
&lt;option value="/estonia/indicators"&gt;爱沙尼亚&lt;/option&gt;
&lt;option value="/ethiopia/indicators"&gt;埃塞俄比亚&lt;/option&gt;
&lt;option value="/euro-area/indicators"&gt;欧元区&lt;/option&gt;
&lt;option value="/european-union/indicators"&gt;欧洲联盟&lt;/option&gt;
&lt;option value="/europe-and-central-asia/indicators"&gt;欧洲和中亚&lt;/option&gt;
&lt;option value="/faeroe-islands/indicators"&gt;法罗群岛&lt;/option&gt;
&lt;option value="/fiji/indicators"&gt;斐济&lt;/option&gt;
&lt;option value="/finland/indicators"&gt;芬兰&lt;/option&gt;
&lt;option value="/france/indicators"&gt;法国&lt;/option&gt;
&lt;option value="/french-polynesia/indicators"&gt;法属波利尼西亚&lt;/option&gt;
&lt;option value="/gabon/indicators"&gt;加蓬&lt;/option&gt;
&lt;option value="/gambia/indicators"&gt;冈比亚&lt;/option&gt;
&lt;option value="/georgia/indicators"&gt;格鲁吉亚&lt;/option&gt;
&lt;option value="/germany/indicators"&gt;德国&lt;/option&gt;
&lt;option value="/ghana/indicators"&gt;加纳&lt;/option&gt;
&lt;option value="/greece/indicators"&gt;希腊&lt;/option&gt;
&lt;option value="/greenland/indicators"&gt;格陵兰&lt;/option&gt;
&lt;option value="/grenada/indicators"&gt;格林纳达&lt;/option&gt;
&lt;option value="/guam/indicators"&gt;关岛&lt;/option&gt;
&lt;option value="/guatemala/indicators"&gt;危地马拉&lt;/option&gt;
&lt;option value="/guinea/indicators"&gt;几内亚&lt;/option&gt;
&lt;option value="/guinea-bissau/indicators"&gt;几内亚比绍&lt;/option&gt;
&lt;option value="/guyana/indicators"&gt;圭亚那&lt;/option&gt;
&lt;option value="/haiti/indicators"&gt;海地&lt;/option&gt;
&lt;option value="/honduras/indicators"&gt;洪都拉斯&lt;/option&gt;
&lt;option value="/hong-kong/indicators"&gt;香港&lt;/option&gt;
&lt;option value="/hungary/indicators"&gt;匈牙利&lt;/option&gt;
&lt;option value="/iceland/indicators"&gt;冰岛&lt;/option&gt;
&lt;option value="/india/indicators"&gt;印度&lt;/option&gt;
&lt;option value="/indonesia/indicators"&gt;印尼&lt;/option&gt;
&lt;option value="/iran/indicators"&gt;伊朗&lt;/option&gt;
&lt;option value="/iraq/indicators"&gt;伊拉克&lt;/option&gt;
&lt;option value="/ireland/indicators"&gt;爱尔兰&lt;/option&gt;
&lt;option value="/isle-of-man/indicators"&gt;马恩岛&lt;/option&gt;
&lt;option value="/israel/indicators"&gt;以色列&lt;/option&gt;
&lt;option value="/italy/indicators"&gt;意大利&lt;/option&gt;
&lt;option value="/ivory-coast/indicators"&gt;象牙海岸&lt;/option&gt;
&lt;option value="/jamaica/indicators"&gt;牙买加&lt;/option&gt;
&lt;option value="/japan/indicators"&gt;日本&lt;/option&gt;
&lt;option value="/jordan/indicators"&gt;约旦&lt;/option&gt;
&lt;option value="/kazakhstan/indicators"&gt;哈萨克斯坦&lt;/option&gt;
&lt;option value="/kenya/indicators"&gt;肯尼亚&lt;/option&gt;
&lt;option value="/kiribati/indicators"&gt;基里巴斯&lt;/option&gt;
&lt;option value="/kosovo/indicators"&gt;科索沃&lt;/option&gt;
&lt;option value="/kuwait/indicators"&gt;科威特&lt;/option&gt;
&lt;option value="/kyrgyzstan/indicators"&gt;吉尔吉斯斯坦&lt;/option&gt;
&lt;option value="/laos/indicators"&gt;老挝&lt;/option&gt;
&lt;option value="/latvia/indicators"&gt;拉脱维亚&lt;/option&gt;
&lt;option value="/lebanon/indicators"&gt;黎巴嫩&lt;/option&gt;
&lt;option value="/lesotho/indicators"&gt;莱索托&lt;/option&gt;
&lt;option value="/liberia/indicators"&gt;利比里亚&lt;/option&gt;
&lt;option value="/libya/indicators"&gt;利比亚&lt;/option&gt;
&lt;option value="/liechtenstein/indicators"&gt;列支敦士登&lt;/option&gt;
&lt;option value="/lithuania/indicators"&gt;立陶宛&lt;/option&gt;
&lt;option value="/luxembourg/indicators"&gt;卢森堡&lt;/option&gt;
&lt;option value="/macau/indicators"&gt;澳门&lt;/option&gt;
&lt;option value="/macedonia/indicators"&gt;马其顿&lt;/option&gt;
&lt;option value="/madagascar/indicators"&gt;马达加斯加&lt;/option&gt;
&lt;option value="/malawi/indicators"&gt;马拉维&lt;/option&gt;
&lt;option value="/malaysia/indicators"&gt;马来西亚&lt;/option&gt;
&lt;option value="/maldives/indicators"&gt;马尔代夫&lt;/option&gt;
&lt;option value="/mali/indicators"&gt;马里&lt;/option&gt;
&lt;option value="/malta/indicators"&gt;马耳他&lt;/option&gt;
&lt;option value="/marshall-islands/indicators"&gt;马绍尔群岛&lt;/option&gt;
&lt;option value="/mauritania/indicators"&gt;毛里塔尼亚&lt;/option&gt;
&lt;option value="/mauritius/indicators"&gt;毛里求斯&lt;/option&gt;
&lt;option value="/mayotte/indicators"&gt;马约特岛&lt;/option&gt;
&lt;option value="/mexico/indicators"&gt;墨西哥&lt;/option&gt;
&lt;option value="/micronesia/indicators"&gt;密克罗尼西亚&lt;/option&gt;
&lt;option value="/moldova/indicators"&gt;摩尔多瓦&lt;/option&gt;
&lt;option value="/monaco/indicators"&gt;摩纳哥&lt;/option&gt;
&lt;option value="/mongolia/indicators"&gt;蒙古&lt;/option&gt;
&lt;option value="/montenegro/indicators"&gt;黑山&lt;/option&gt;
&lt;option value="/morocco/indicators"&gt;摩洛哥&lt;/option&gt;
&lt;option value="/mozambique/indicators"&gt;莫桑比克&lt;/option&gt;
&lt;option value="/myanmar/indicators"&gt;缅甸&lt;/option&gt;
&lt;option value="/namibia/indicators"&gt;纳米比亚&lt;/option&gt;
&lt;option value="/nepal/indicators"&gt;尼泊尔&lt;/option&gt;
&lt;option value="/netherlands/indicators"&gt;荷兰&lt;/option&gt;
&lt;option value="/netherlands-antilles/indicators"&gt;荷属安的列斯群岛&lt;/option&gt;
&lt;option value="/new-caledonia/indicators"&gt;新喀里多尼亚&lt;/option&gt;
&lt;option value="/new-zealand/indicators"&gt;新西兰&lt;/option&gt;
&lt;option value="/nicaragua/indicators"&gt;尼加拉瓜&lt;/option&gt;
&lt;option value="/niger/indicators"&gt;尼日尔&lt;/option&gt;
&lt;option value="/nigeria/indicators"&gt;尼日利亚&lt;/option&gt;
&lt;option value="/north-korea/indicators"&gt;朝鲜&lt;/option&gt;
&lt;option value="/norway/indicators"&gt;挪威&lt;/option&gt;
&lt;option value="/oman/indicators"&gt;阿曼&lt;/option&gt;
&lt;option value="/pakistan/indicators"&gt;巴基斯坦&lt;/option&gt;
&lt;option value="/palau/indicators"&gt;帕劳&lt;/option&gt;
&lt;option value="/panama/indicators"&gt;巴拿马&lt;/option&gt;
&lt;option value="/palestine/indicators"&gt;巴勒斯坦&lt;/option&gt;
&lt;option value="/papua-new-guinea/indicators"&gt;巴布亚新几内亚&lt;/option&gt;
&lt;option value="/paraguay/indicators"&gt;巴拉圭&lt;/option&gt;
&lt;option value="/peru/indicators"&gt;秘鲁&lt;/option&gt;
&lt;option value="/philippines/indicators"&gt;菲律宾&lt;/option&gt;
&lt;option value="/poland/indicators"&gt;波兰&lt;/option&gt;
&lt;option value="/portugal/indicators"&gt;葡萄牙&lt;/option&gt;
&lt;option value="/puerto-rico/indicators"&gt;波多黎各&lt;/option&gt;
&lt;option value="/qatar/indicators"&gt;卡塔尔&lt;/option&gt;
&lt;option value="/republic-of-the-congo/indicators"&gt;刚果共和国&lt;/option&gt;
&lt;option value="/romania/indicators"&gt;罗马尼亚&lt;/option&gt;
&lt;option value="/russia/indicators"&gt;俄罗斯&lt;/option&gt;
&lt;option value="/rwanda/indicators"&gt;卢旺达&lt;/option&gt;
&lt;option value="/samoa/indicators"&gt;萨摩亚&lt;/option&gt;
&lt;option value="/sao-tome-and-principe/indicators"&gt;圣多美和普林西比&lt;/option&gt;
&lt;option value="/saudi-arabia/indicators"&gt;沙特阿拉伯&lt;/option&gt;
&lt;option value="/senegal/indicators"&gt;塞内加尔&lt;/option&gt;
&lt;option value="/serbia/indicators"&gt;塞尔维亚&lt;/option&gt;
&lt;option value="/seychelles/indicators"&gt;塞舌尔&lt;/option&gt;
&lt;option value="/sierra-leone/indicators"&gt;塞拉利昂&lt;/option&gt;
&lt;option value="/singapore/indicators"&gt;新加坡&lt;/option&gt;
&lt;option value="/slovakia/indicators"&gt;斯洛伐克&lt;/option&gt;
&lt;option value="/slovenia/indicators"&gt;斯洛文尼亚&lt;/option&gt;
&lt;option value="/solomon-islands/indicators"&gt;所罗门群岛&lt;/option&gt;
&lt;option value="/somalia/indicators"&gt;索马里&lt;/option&gt;
&lt;option value="/south-africa/indicators"&gt;南非&lt;/option&gt;
&lt;option value="/south-asia/indicators"&gt;南亚&lt;/option&gt;
&lt;option value="/south-korea/indicators"&gt;韩国&lt;/option&gt;
&lt;option value="/south-sudan/indicators"&gt;南苏丹&lt;/option&gt;
&lt;option value="/spain/indicators"&gt;西班牙&lt;/option&gt;
&lt;option value="/sri-lanka/indicators"&gt;斯里兰卡&lt;/option&gt;
&lt;option value="/sudan/indicators"&gt;苏丹&lt;/option&gt;
&lt;option value="/suriname/indicators"&gt;苏里南&lt;/option&gt;
&lt;option value="/swaziland/indicators"&gt;斯威士兰&lt;/option&gt;
&lt;option value="/sweden/indicators"&gt;瑞典&lt;/option&gt;
&lt;option value="/switzerland/indicators"&gt;瑞士&lt;/option&gt;
&lt;option value="/syria/indicators"&gt;叙利亚&lt;/option&gt;
&lt;option value="/taiwan/indicators"&gt;台湾&lt;/option&gt;
&lt;option value="/tajikistan/indicators"&gt;塔吉克斯坦&lt;/option&gt;
&lt;option value="/tanzania/indicators"&gt;坦桑尼亚&lt;/option&gt;
&lt;option value="/thailand/indicators"&gt;泰国&lt;/option&gt;
&lt;option value="/timor-leste/indicators"&gt;Timor Leste&lt;/option&gt;
&lt;option value="/togo/indicators"&gt;多哥&lt;/option&gt;
&lt;option value="/tonga/indicators"&gt;汤加&lt;/option&gt;
&lt;option value="/trinidad-and-tobago/indicators"&gt;特里尼达和多巴哥&lt;/option&gt;
&lt;option value="/tunisia/indicators"&gt;突尼斯&lt;/option&gt;
&lt;option value="/turkey/indicators"&gt;土耳其&lt;/option&gt;
&lt;option value="/turkmenistan/indicators"&gt;土库曼斯坦&lt;/option&gt;
&lt;option value="/uganda/indicators"&gt;乌干达&lt;/option&gt;
&lt;option value="/ukraine/indicators"&gt;乌克兰&lt;/option&gt;
&lt;option value="/united-arab-emirates/indicators"&gt;阿联酋&lt;/option&gt;
&lt;option value="/united-kingdom/indicators"&gt;英国&lt;/option&gt;
&lt;option value="/united-states/indicators"&gt;美国&lt;/option&gt;
&lt;option value="/uruguay/indicators"&gt;乌拉圭&lt;/option&gt;
&lt;option value="/uzbekistan/indicators"&gt;乌兹别克斯坦&lt;/option&gt;
&lt;option value="/vanuatu/indicators"&gt;瓦努阿图&lt;/option&gt;
&lt;option value="/venezuela/indicators"&gt;委内瑞拉&lt;/option&gt;
&lt;option value="/vietnam/indicators"&gt;越南&lt;/option&gt;
&lt;option value="/virgin-islands/indicators"&gt;维尔京群岛&lt;/option&gt;
&lt;option value="/yemen/indicators"&gt;也门&lt;/option&gt;
&lt;option value="/zambia/indicators"&gt;赞比亚&lt;/option&gt;
&lt;option value="/zimbabwe/indicators"&gt;津巴布韦&lt;/option&gt;
&lt;/select&gt;
&lt;/div&gt;
&lt;div class="accordion accordion-flush" id="accordion"&gt;
&lt;div class="accordion-item" id="ctl00_LeftSideMenuContainer1_ctl00_mainPanel"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/calendar" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater0_ctl01_HyperLink1"&gt;日历&lt;br/&gt;
&lt;/a&gt;
&lt;a href="/china/forecast" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater0_ctl02_HyperLink1"&gt;预测&lt;br/&gt;
&lt;/a&gt;
&lt;a href="/china/indicators" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater0_ctl03_HyperLink1"&gt;指标&lt;br/&gt;
&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="0" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#0" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  市场
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="0"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/currency" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl00_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货币&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-bond-yield" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl00_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;10年期政府债券&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/stock-market" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl00_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;股市&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="1" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#1" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  国内生产总值
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="1"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/full-year-gdp-growth" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;全年GDP增长&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国内生产总值&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-constant-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;不变价国内生产总值&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-from-agriculture" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;从农业GDP&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-from-construction" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;从国内生产总值建设&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-from-manufacturing" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;从制造业的GDP&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-from-services" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;从GDP的服务&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-from-transport" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;从GDP运输&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-growth" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国内生产总值增长率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-growth-annual" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国内生产总值增长率（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-per-capita" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;人均国内生产总值&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-per-capita-ppp" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl11_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;人均国内生产总值 (以购买力平价计算)&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gross-fixed-capital-formation" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl12_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;固定资本形成总额&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gross-national-product" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl01_Repeater2_ctl13_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国民生产总值&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="2" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#2" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  劳动力
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="2"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/average-weekly-hours" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;平均周学时&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/employed-persons" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;就业人数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/labour-costs" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;劳力成本&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/minimum-wages" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;最低工资&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/population" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;人口&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/retirement-age-men" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;男性退休年龄&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/retirement-age-women" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;女性退休年龄&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/unemployment-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;失业率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/wages" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;工资&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/wages-in-manufacturing" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;制造业工资&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/youth-unemployment-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl02_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;青年失业率&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="3" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#3" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  价格
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="3"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/consumer-price-index-cpi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;居民消费价格指数CPI&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/core-consumer-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;核心消费者物价指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/core-inflation-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;核心通胀率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/core-inflation-rate-mom" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;核心通胀率（每月）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/export-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;出口价格&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/food-inflation" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;食品通胀&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gdp-deflator" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国内生产总值平减指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/import-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;进口价格&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/inflation-rate-mom" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;通货膨胀率（每月）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/inflation-cpi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;通货膨胀率（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/producer-prices-change" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;生产者价格指数（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/producer-price-inflation-mom" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl11_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;生产者价格通胀（每月）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/producer-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl12_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;生产者价格&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/rent-inflation" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl03_Repeater2_ctl13_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;租金通胀&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="4" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#4" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  金融
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="4"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/14-day-reverse-repo-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;14天逆回购利率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/cash-reserve-ratio" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;Cash Reserve Ratio Big Banks&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/central-bank-balance-sheet" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;央行资产负债表&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/deposit-interest-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;存款利率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/fixed-asset-investment" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;固定资产投资（YTD）（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/foreign-exchange-reserves" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;外汇储备&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/interbank-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;银行间同业拆借利率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/liquidity-injections-via-mlf" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;通过 MLF 注入流动性&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/liquidity-injections-via-reverse-repo" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;通过反向回购注入流动性&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/interest-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;贷款最优惠利率1年&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/loan-prime-rate-5y" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;贷款最优惠利率5年&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/loans-to-banks" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl11_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;银行贷款&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/money-supply-m2" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl12_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;M2货币供应量（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/money-supply-m0" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl13_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货币供应量M0&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/money-supply-m1" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl14_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货币供应量M1&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/money-supply-m3" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl15_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货币供应量M3&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/banks-balance-sheet" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl16_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;新增人民币贷款&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/loan-growth" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl17_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;未偿贷款增长 (同比)&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/1-year-mlf-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl18_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;中国人民银行1年期MLF公告&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/reverse-repo-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl19_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;反向回购利率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/loans-to-private-sector" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl04_Repeater2_ctl20_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;总计社会融资&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="5" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#5" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  贸易
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse show" data-bs-parent="#accordion" id="5"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/balance-of-trade" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;贸易差额&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/capital-flows" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;资本流动&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/crude-oil-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;原油产量&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/current-account" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;经常账户&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/current-account-goods" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;经常账户商品&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/current-account-services" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;活期账户服务&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/current-account-to-gdp" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;经常账户占GDP比例&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/direct-investment-liabilities" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;直接投资负债&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/electric-car-exports" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;电动汽车出口&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/exports" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;出口&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/exports-yoy" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;出口（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/external-debt" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl11_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;外债&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/foreign-direct-investment" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl12_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;外国直接投资&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/foreign-direct-investment-yoy" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl13_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;外商直接投资（同比)&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/freight-traffic" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl14_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货运量&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/freight-traffic-civil-aviation" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl15_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货运量 民航&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/freight-traffic-highways" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl16_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货运交通公路&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/freight-traffic-railways" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl17_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;Freight Traffic Railways&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/freight-traffic-waterways" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl18_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;货运水路&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gold-reserves" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl19_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;黄金储备&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/imports" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl20_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;进口&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/imports-yoy" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl21_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;进口（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/auto-exports" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl22_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;Passanger Car Exports&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/terms-of-trade" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl23_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;贸易条款&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/terrorism-index" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl24_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;恐怖主义指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/tourist-arrivals" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl25_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;入境旅游人数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/weapons-sales" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl05_Repeater2_ctl26_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;武器销售&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="6" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#6" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  政府
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="6"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/corruption-index" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;腐败指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/corruption-rank" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;腐败排名&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/rating" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;信用评级&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/fiscal-expenditure" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;财政支出&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-budget" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;政府预算&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-budget-value" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;政府预算值&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-debt-to-gdp" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;政府债务占国内生产总值比重&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-revenues" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;政府收入&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/government-spending" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;政府支出&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/holidays" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;假期&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/military-expenditure" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl06_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;军费&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="7" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#7" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  商业
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="7"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/business-conditions-index" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;经营状况指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/composite-pmi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;财新 - 综合 - 中小企业&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/manufacturing-pmi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;财新制造业采购经理人指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/services-pmi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;财新 服务业采购经理人指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/cement-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;水泥生产&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/changes-in-inventories" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;库存变化&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/composite-leading-indicator" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;综合领先指标&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/electricity-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;电力生产&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/capacity-utilization" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;工业产能利用率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/industrial-production-mom" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl09_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;工业生产（月）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/industrial-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl10_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;工业生产（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/corporate-profits" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl11_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;工业利润（年初至今）同比增长&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/leading-economic-index" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl12_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;领先经济指标&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/manufacturing-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl13_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;制造业生产（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/mining-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl14_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;矿业生产&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/nbs-general-pmi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl15_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国家统计局综合采购经理人指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/business-confidence" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl16_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国家统计局制造业采购经理人指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/non-manufacturing-pmi" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl17_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;国家统计局非制造业采购经理人指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/new-orders" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl18_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;新订单指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/car-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl19_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;Passanger Car Production&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/car-registrations" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl20_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;Passenger Car Sales&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/steel-production" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl21_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;钢铁生产&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/total-vehicle-sales" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl07_Repeater2_ctl22_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;汽车销售（年度）&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="8" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#8" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  消费
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="8"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/bank-lending-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;银行贷款利率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/consumer-confidence" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;消费者信心指数&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/consumer-credit" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;消费信贷&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/consumer-spending" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;消费支出&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/disposable-personal-income" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;个人可支配收入&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/gasoline-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;汽油价格&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/households-debt-to-gdp" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;家庭债务占国内生产总值&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/retail-sales" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl07_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;零售销售（月率环比)&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/retail-sales-annual" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl08_Repeater2_ctl08_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;零售销售（年率同比)&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="9" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#9" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  住房
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="9"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/house-price-index-mom" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;房屋价格指数（月度）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/housing-index" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;房屋价格指数（年）&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/housing-starts" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;新屋开工&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/new-home-sales" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;新屋销售&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/property-investment" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;物业投资&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/residential-property-prices" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl09_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;住宅物业价格&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="10" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#10" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  税种
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="10"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/corporate-tax-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;企业所得税税率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/personal-income-tax-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;个人所得税&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/sales-tax-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;销售税率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/social-security-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;社会保障覆盖率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/social-security-rate-for-companies" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl04_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;企业社会保障覆盖率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/social-security-rate-for-employees" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl05_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;员工社会保障覆盖率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/withholding-tax-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl10_Repeater2_ctl06_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;预扣税率&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="11" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#11" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  健康
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="11"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/coronavirus-cases" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl11_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;冠状病毒病例&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/coronavirus-deaths" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl11_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;冠状病毒死亡&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/coronavirus-vaccination-rate" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl11_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;冠状病毒疫苗接种率&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/coronavirus-vaccination-total" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl11_Repeater2_ctl03_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;冠状病毒疫苗总数&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="accordion-item card-small-spacing"&gt;
&lt;h2 class="accordion-header"&gt;
&lt;button aria-controls="12" aria-expanded="false" class="accordion-button collapsed" data-bs-parent="#accordion" data-bs-target="#12" data-bs-toggle="collapse" type="button"&gt;
&lt;b class="dropdown-toggle"&gt;&lt;/b&gt;  气候
                        &lt;/button&gt;
&lt;/h2&gt;
&lt;div class="accordion-collapse collapse" data-bs-parent="#accordion" id="12"&gt;
&lt;div class="accordion-body"&gt;
&lt;a href="/china/co2-emissions" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl12_Repeater2_ctl00_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;二氧化碳排放&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/precipitation" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl12_Repeater2_ctl01_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;沉淀&lt;/a&gt;&lt;br/&gt;
&lt;a href="/china/temperature" id="ctl00_LeftSideMenuContainer1_ctl00_Repeater1_ctl12_Repeater2_ctl02_HyperLink2" style="text-decoration: none; text-transform: capitalize;"&gt;温度&lt;/a&gt;&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;div id="ctl00_LeftSideMenuContainer1_AdAnalyticsSquare_AdPanel"&gt;
&lt;style&gt;.te-ad{border:thin solid #d3d3d3;width:100%;height:100%;background-image: linear-gradient(#333, #808080); text-align:left;padding:20px;color:#333}.te-ad-link{color:#fff;text-decoration:underline}.te-ad-text{padding-top:10px;color:#ededed}.te-ad-h2{font-size:24px;line-height: 22px; font-weight:700;color: #fff}.te-ad-h1{font-size:11px;padding-bottom:0; color: #fff}.te-ad-item{font-weight:bold}&lt;/style&gt;
&lt;a href="https://tradingeconomics.com/analytics/features.aspx?source=300x250" style="text-decoration: none;" target="_blank"&gt;
&lt;div class="te-ad"&gt;
&lt;div class="te-ad-h1"&gt;TRADING ECONOMICS&lt;/div&gt;
&lt;span class="te-ad-h2"&gt;Subscriptions  &lt;/span&gt;
&lt;div class="te-ad-text"&gt;
&lt;div&gt;
                We have a plan for your needs. Standard users can export data in a easy to use web interface. Advanced users can use our excel add-in or our Python/R/Matlab packages. API users can feed a custom application.
            &lt;/div&gt;
&lt;br/&gt;
&lt;div class="row"&gt;
&lt;div class="col-xs-12 col-md-7"&gt;
&lt;div class="te-ad-item"&gt;Economic Calendar&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Historical Data&lt;/div&gt;
&lt;div class="te-ad-item"&gt;News Stream&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Earnings Releases&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Credit Ratings&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Forecasts&lt;/div&gt;
&lt;/div&gt;
&lt;div class="col-xs-12 col-md-5"&gt;
&lt;div class="te-ad-item"&gt;Markets&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Currencies&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Stocks&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Commodities&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Bonds&lt;/div&gt;
&lt;div class="te-ad-item"&gt;Crypto&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;div class="btn btn-primary"&gt;Get Started&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;div class="te-job-ad" id="ctl00_LeftSideMenuContainer1_ctl01_AdPanel"&gt;
&lt;style&gt;.te-job-ad-text{padding-bottom:7px;padding-top:3px;}.te-job-ad-title{font-size:24px;font-weight:700;}.te-job-ad-item{font-weight:normal}&lt;/style&gt;
&lt;a href="https://tradingeconomics.com/careers.aspx?source=jobad" style="text-decoration: none;" target="_blank"&gt;
&lt;div class="card" style="background-image: linear-gradient(#f2f2f2, #fff)"&gt;
&lt;div class="card-body"&gt;
&lt;div class="te-job-ad-title"&gt;
                    We Are Hiring
                &lt;/div&gt;
&lt;div class="te-job-ad-text"&gt;
                 Trading Economics welcomes candidates from around the world. Current job openings:
                &lt;/div&gt;
&lt;div class="te-job-ad-item"&gt;&lt;b&gt;Web Developer&lt;/b&gt; | &lt;b&gt;Data Analyst&lt;/b&gt; | &lt;b&gt;Sales&lt;/b&gt;&lt;/div&gt;
&lt;br/&gt;
&lt;span class="btn btn-info"&gt;Apply Now&lt;/span&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/a&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;div class="container-fluid te-footer"&gt;
&lt;footer&gt;
&lt;div class="container"&gt;
&lt;div class="row"&gt;
&lt;div id="ctl00_Footer1_PanelFooterLanguages"&gt;
&lt;style&gt;.footerItems {}&lt;/style&gt;
&lt;br/&gt;
&lt;p&gt;
&lt;a class="footerItems" href="/"&gt;起始页&lt;/a&gt; 
        |  &lt;a class="footerItems" href="/countries"&gt;国家&lt;/a&gt;  
        |  &lt;a class="footerItems" href="/indicators"&gt;指标&lt;/a&gt;  
        |  &lt;a class="footerItems" href="https://tradingeconomics.com/about-te.aspx" target="_blank"&gt;关于我们&lt;/a&gt;  
        |  &lt;a class="footerItems" href="https://tradingeconomics.com/contact.aspx" target="_blank"&gt;联系&lt;/a&gt;
&lt;/p&gt;
&lt;span style="color: #E7E7EF; font-size: 11px;"&gt;©2024 TRADING ECONOMICS&lt;/span&gt;&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/footer&gt;
&lt;/div&gt;
&lt;/form&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.4/jquery.min.js"&gt;&lt;/script&gt;
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.1/js/bootstrap.bundle.min.js"&gt;&lt;/script&gt;
&lt;script&gt;
    $(function(){
        console.log("js/alerts.ascx")
        var isAlertsLoaded = false;
        function LoadAlertsScript() {
            console.log("Loading Alerts JS")
            $.getScript('https://d107vmm87795sh.cloudfront.net/historical/te-alerts-bs5.js?v=20230830');
            //Bootstrap3: https://d107vmm87795sh.cloudfront.net/historical/te-alerts.js?v=20200117
            isAlertsLoaded = true;

        }
        $('a[data-bs-toggle="tab"]').on('shown.bs.tab', function (e) {
            if (!isAlertsLoaded) {
                var target = $(e.target).attr("href");
                if (target == "#alerts") {
                    LoadAlertsScript();
                    $(window).scrollTop(0);
                } else if (target == "#calendar-table") {
                    $("#pagemenutabs li").removeClass("active");
                    document.getElementById("calendar-table").scrollIntoView();
                };
            }
        });

        if (!isAlertsLoaded &amp;&amp; location.href.indexOf("#alerts") != -1) {
            LoadAlertsScript();
        }
    });
&lt;/script&gt;
&lt;script&gt;

    $(function(){

        console.log("/js/pagemenu-tabs")

        // remove calendar tab if no calendar is present
        var calendarTab = document.querySelector("li a[href='#calendar-table']");
        if (!hasCalendar &amp;&amp; calendarTab) {
            var li_parent = calendarTab.closest('li');
            li_parent.remove();
            console.log('calendar removed using js..');
        }

        // active deactivate calendar on scroll
        var previousActive = document.querySelector(".pagetabs a.active")

        var section = document.querySelectorAll(".section");
        var sections = {};

        Array.prototype.forEach.call(section, function (e) {
            sections[e.id] = e.offsetTop;
        });

      

        // hack while there is still tabs on top of the chart
        var all_togglers = document.querySelectorAll(".pagetabs a[data-bs-toggle]");
        for (var i = 0; i &lt; all_togglers.length; i++) {
            all_togglers[i].addEventListener("click", function (event) {
                var link = event.target.getAttribute("href");
                // remove active from all chart-nav tabs
                var chartTabs = document.querySelectorAll(".chart-nav li");
                for (var i = 0; i &lt; chartTabs.length; i++) {
                    chartTabs[i].classList.remove("active");
                }

                var intradayTab = document.querySelector(".chart-nav li a[href='#intraday']");
                var historicalTab = document.querySelector(".chart-nav li a[href='#historical']");
                var forecastTab = document.querySelector(".chart-nav li a[href='#forecast']");

                if (link == "#historical") {
                    if (intradayTab) {
                        intradayTab.closest('li').style.display = 'block';
                        intradayTab.closest('li').classList.add("active")
                    }

                    if (historicalTab) {
                        historicalTab.closest('li').style.display = 'block';
                        if (intradayTab)
                            historicalTab.closest('li').classList.remove("active");
                        else
                            historicalTab.closest('li').classList.add("active");
                    }

                    if (forecastTab) {
                        forecastTab.closest('li').style.display = 'none';
                        forecastTab.closest('li').classList.remove("active");
                    }

                    swapDataAndApiLinks("historical");
                } else if (link == "#forecast") {
                    if (intradayTab) {
                        intradayTab.closest('li').style.display = 'none';
                        intradayTab.closest('li').classList.remove("active")
                    }

                    if (historicalTab) {
                        historicalTab.closest('li').style.display = 'none';
                        historicalTab.closest('li').classList.remove("active");
                    }

                    if (forecastTab) {
                        forecastTab.closest('li').style.display = 'block';
                        forecastTab.closest('li').classList.add("active");
                    }

                    swapDataAndApiLinks("forecast");
                }
                else if (link == "#stats") {
                    if (intradayTab) {
                        intradayTab.closest('li').style.display = 'none';
                        intradayTab.closest('li').classList.remove("active")
                    }
                    if (historicalTab) {
                        historicalTab.closest('li').style.display = 'none';
                        historicalTab.closest('li').classList.remove("active");
                    }
                    if (forecastTab) {
                        forecastTab.closest('li').style.display = 'block';
                        forecastTab.closest('li').classList.add("active");
                    }
                    swapDataAndApiLinks("stats");
                }
            });
        }

        // swap Data and API links in the page between historical and forecast 
        function swapDataAndApiLinks(type) {
            var apiUrl = $("#api-url-text").val();
            if (typeof apiUrl == 'undefined') apiUrl = '';
            var currentUrl = window.location.href;
            // replace the download btn
            if ($("#menu-download-btn") &amp;&amp; $("#menu-download-btn").length &gt; 0) {
                downloadBtnAnchor = $("#menu-download-dropdown [data-download=csv]").attr('href');
                if (type == "historical" || type == "stats") {
                    downloadBtnAnchor = downloadBtnAnchor.replace(new RegExp("/forecast/", 'g'), "/historical/");
                    downloadBtnAnchor = downloadBtnAnchor.replace(new RegExp("/forecasts/symbol/", 'g'), "/historical/");
                    if (currentUrl.indexOf("/commodity/") !== -1) {
                        if (downloadBtnAnchor.indexOf("1900-01-01") === -1) {
                            downloadBtnAnchor = downloadBtnAnchor.replace("?", "/1900-01-01?");
                        }

                    }
                }
                else if (type == "forecast")
                    if (apiUrl.includes("/markets")) {
                        downloadBtnAnchor = downloadBtnAnchor.replace(new RegExp("/historical/", 'g'), "/forecasts/symbol/");
                    }
                    else {
                        if (currentUrl.indexOf("/commodity/") !== -1) {
                            downloadBtnAnchor = downloadBtnAnchor.replace(new RegExp("/1900-01-01?", 'g'), "");
                        }
                        downloadBtnAnchor = downloadBtnAnchor.replace(new RegExp("/historical/", 'g'), "/forecast/");
                    }
                $("#menu-download-dropdown [data-download=csv]").attr('href', downloadBtnAnchor);
            }
            // replace the API inner text
            var apiContent = $("#api-msg-panel").html();
            if (apiContent) {
                if (type == "historical" || type == "stats") {
                    apiContent = apiContent.replace(new RegExp("/forecasts/symbol/", 'g'), "/historical/");
                    apiContent = apiContent.replace(new RegExp("/forecast/", 'g'), "/historical/");

                    //if (TECategory == 'Commodity') {
                    //  apiContent = apiContent.replace(new RegExp("await te.getMarketsForecast", 'g'), "await te.getHistoricalMarkets");
                    //apiContent = apiContent.replace(new RegExp("getMarketsForecasts", 'g'), "getHistorical");
                    //} else {
                    apiContent = apiContent.replace(new RegExp("await te.getForecast", 'g'), "await te.getHistoricalData");
                    apiContent = apiContent.replace(new RegExp("getForecastData", 'g'), "getHistoricalData");
                    //}

                    $("#api-msg-panel").html(apiContent);

                    if (currentUrl.includes("/commodity/") !== -1) {
                        if (apiContent.indexOf("1900-01-01") === -1) {
                            apiContent = apiContent.replace("?", "/1900-01-01?");
                        }

                    }
                } else if (type = "forecast") {

                    if (apiUrl.includes("/markets")) {
                        apiContent = apiContent.replace(new RegExp("/historical/", 'g'), "/forecasts/symbol/");
                    }
                    else {
                        apiContent = apiContent.replace(new RegExp("/historical/", 'g'), "/forecast/");
                        apiContent = apiContent.replace(new RegExp("getHistoricalData", 'g'), "getForecastData");
                        apiContent = apiContent.replace(new RegExp("await te.getForecastData", 'g'), "await te.getForecast");

                        if (TESymbol.length &gt; 0) {
                            if (TECategory == 'Commodity') {
                                apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), TESymbol + ':COM');
                            } /*else if (TECategory == 'Currency') {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), TESymbol + ':CUR');
                        } else if (TECategory == 'Stock Market' || TECategory == 'Index') {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), TESymbol + ':IND');
                        } else if (TECategory == 'Stock') {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), apiUrl.split("/")[1]);
                        } else if (TECategory.toLowerCase().includes('bond')) {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), TESymbol + ':GOV');
                        } else {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), 'SYMBOL');
                        }*/
                        } else {
                            apiContent = apiContent.replace(new RegExp("symbolToReplace", 'g'), 'SYMBOL');

                        }


                        if (currentUrl.indexOf("/commodity/") !== -1) {
                            apiContent = apiContent.replace(new RegExp("/1900-01-01?", 'g'), "");
                        }
                    }

                    $("#api-msg-panel").html(apiContent);
                }
            }
            // replace the Data inner text
            var dataContent = $("#data.tab-pane").html();
            if (dataContent) {
                if (type == "historical") {
                    dataContent = dataContent.replace(new RegExp("/forecast/", 'g'), "/historical/");
                    $("#data.tab-pane").html(dataContent);
                    if (currentUrl.indexOf("/commodity/") !== -1) {
                        if (dataContent.indexOf("1900-01-01") === -1) {
                            dataContent = dataContent.replace("?", "/1900-01-01?");
                        }

                    }
                } else if (type = "forecast") {
                    dataContent = dataContent.replace(new RegExp("/historical/", 'g'), "/forecast/");
                    $("#data.tab-pane").html(dataContent);
                    if (currentUrl.indexOf("/commodity/") !== -1) {
                        dataContent = dataContent.replace(new RegExp("/1900-01-01?", 'g'), "");
                    }
                }
            }
            // replace export
            var exportContent = $("#export-mssg-panel").html();
            if (exportContent) {
                if (type == "historical" || type == "stats") {
                    exportContent = exportContent.replace(new RegExp("/forecast/", 'g'), "/historical/");
                    exportContent = exportContent.replace(new RegExp("/forecasts/symbol/", 'g'), "/historical/");
                    exportContent = exportContent.replace(new RegExp("Forecast", 'g'), "Historical");
                    if (currentUrl.indexOf("/commodity/") !== -1) {
                        if (exportContent.indexOf("1900-01-01") === -1) {

                            var urlHist = "/ticker/" + TESymbol + "/1900-01-01";
                            var urlFor = "/ticker/" + TESymbol
                            exportContent = exportContent.replace(new RegExp(urlFor, 'g'), urlHist);
                        }
                    }
                } else if (type = "forecast") {
                    if (apiUrl.includes("/markets")) {
                        exportContent = exportContent.replace(new RegExp("/historical/", 'g'), "/forecasts/symbol/");
                    }
                    else {
                        exportContent = exportContent.replace(new RegExp("/historical/", 'g'), "/forecast/");
                        if (currentUrl.indexOf("/commodity/") !== -1) {
                            exportContent = exportContent.replace(new RegExp("/1900-01-01?", 'g'), "");
                        }
                    }
                    exportContent = exportContent.replace(new RegExp("Historical", 'g'), "Forecast");
                }
                $("#export-mssg-panel").html(exportContent);
            }
        }
        var expandable_panel = document.getElementById("expand-panel");
        var expand_links = document.getElementsByClassName("show-expand-panel");
        var scroll_top_links = document.getElementsByClassName("scroll-top-on-click");

        // scroll top
        for (var i = 0; i &lt; scroll_top_links.length; i++) {
            scroll_top_links[i].addEventListener("click", function (event) { scrollTop(event) });
        }

        function scrollTop() {
            window.scroll(0, 0);
            console.log("scroll top!");
        }

        // show on click
        for (var i = 0; i &lt; expand_links.length; i++) {
            expand_links[i].addEventListener("click", function (event) { expandPanelOnClick(event) });
        }

        function expandPanelOnClick(event) {
            // get the element
            var element = event.target.closest("a.show-expand-panel");

            // check if the element is expanding the panel
            if (element.classList.contains("expanding-panel"))
                return;

            // clear all the panel opened
            hidePanel();

            // find the current element anchor and build the borders
            element.classList.add("expanding-panel");

            // find the active li and remove the bottom border
            var active_anchor = document.querySelector(".pagetabs .nav li.active a");
            active_anchor.classList.add("expand-panel-open");

            // loader        
            var loader = $("&lt;div class='loader' style='width: 30px; height: 30px; align-self: center;'&gt;&lt;/div&gt;");

            // clear the panel content
            var panel_content = document.getElementById("expand-panel-content");

            // show the right panel, by convention, it looks for the panel with the element id name, removing the word 'link'
            var elementId = element.id.replace("Link", "");

            var panelToOpen = expandable_panel.querySelector("#" + elementId);

            if (panelToOpen)
                panelToOpen.hidden = false;

            // display the panel
            expandable_panel.style.display = "block";

            console.log("panel openned");
        }

        // hide on outside click
        function hidePanelOnClickOutside(element) {
            const isVisible = elem =&gt; !!elem &amp;&amp; !!(elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length);

            const outsideClickListener = event =&gt; {

                // find the anchor expanding the panel
                var anchor_expanding = document.querySelector(".pagetabs .nav li a.expanding-panel");
                if (!anchor_expanding)
                    return;

                // if the element is not the panel or its children, or the anchor that expanded it, hide the panel
                if (!element.contains(event.target) &amp;&amp; event.target.closest("a.show-expand-panel") != anchor_expanding) {
                    if (isVisible(element)) {
                        hidePanel();
                    }
                }
            };

            document.addEventListener('click', outsideClickListener);
        }

        hidePanelOnClickOutside(expandable_panel);


        function hidePanel() {
            // hide the panel
            expandable_panel.style.display = "none";

            // all panels hidden
            var panelsToHide = expandable_panel.querySelectorAll("#expand-panel-content &gt; div");
            if (panelsToHide) {
                for (var i = 0; i &lt; panelsToHide.length; i++) {
                    panelsToHide[i].hidden = true;
                }
            }

            // find the active li and add the bottom border
            var active_anchor = document.querySelector(".pagetabs .nav li.active a");
            if (active_anchor)
                active_anchor.classList.remove("expand-panel-open");

            // remove the class from the anchor expanding the panel
            var anchor_expanding = document.querySelector(".pagetabs .nav li a.expanding-panel");
            if (anchor_expanding)
                anchor_expanding.classList.remove("expanding-panel");

            console.log("panel closed");
        }

    });

   
&lt;/script&gt;
&lt;script&gt;console.log("/js/chartec.ascx");&lt;/script&gt;
&lt;script src="https://d1v8a2ofhkdel3.cloudfront.net/cdn/highstock_exporting.10.1.0.js"&gt;&lt;/script&gt;
&lt;link href="https://d2xewprs6ejfae.cloudfront.net/production/ec.min.css?v=20240320" rel="stylesheet"/&gt;
&lt;script src="https://d2xewprs6ejfae.cloudfront.net/production/ec.min.js?v=20240320"&gt;&lt;/script&gt;
&lt;style&gt;.modal-dialog-centered{display:flex;align-items:center;justify-content:center;height:calc(100% - 60px)}.modal-footer,.modal-header{padding:10px 15px;border:none}#menu-download-dropdown li{padding:0;border-top:none}#menu-download-dropdown li a{padding:10px 20px;display:flex}&lt;/style&gt;
&lt;script&gt;
    $(function(){
        console.log("/js/pagemenu-exports")

        // Bootstrap offcanvas events, fix for static one
        $('.navbar-toggler-icon').click(function () {
            $(".pagemenu, .pagetabs").css('padding-right', '17px');
        });
        $('.userOptionsMenu').click(function () {
            $(".pagemenu, .pagetabs").css('padding-right', '17px');
        });

        $('.offcanvas').on('show.bs.offcanvas hidden.bs.offcanvas', function () {
            var isShown = $(this).hasClass('show');
            $(".pagemenu, .pagetabs").css('padding-right', isShown ? '17px' : '');
        });


        var pageTabs = document.querySelector(".pagetabs");
        if (pageTabs) {
            pageTabs.addEventListener("click", function (e) {
                if (e.target.classList.contains("scroll-top-on-click")) {
                    window.scroll(0, 0);
                }
            });
        }
        // build the event to the click
        $('body').on("click", "a[data-download]", function (event) {
            event.preventDefault();
            event.stopPropagation();
            downloadBtnClickEvent(event);
        });

        $('.pagetabs').on('click', '.page-scroll', function () {
            $('html, body').animate({
                scrollTop: $($.attr(this, 'href')).offset().top
            }, 500);
            return false;
        });

        $('.pagetabs').on('click', '.page-scroll-adjusted', function () {
            $('html, body').animate({
                scrollTop: $($.attr(this, 'href')).offset().top - 135
            }, 500);
            return false;
        });
        var indicatorPage = false, calendarPage = false, forecastPage = false, snapshotPage = false;;
        var URL = window.location.pathname;
        var hasTabs = false;

        var tab = '&lt;li class="nav-item"&gt;&lt;a class="nav-link dropdown-toggle" href="" id="menu-download-btn" class="dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"&gt;&lt;i class="bi bi-download"&gt;&lt;/i&gt;&amp;nbsp;Export&lt;/a&gt;'
        tab += '&lt;ul id="menu-download-dropdown" class="dropdown-menu"&gt;'
        tab += '&lt;li class="dropdown-item"&gt;&lt;a href="#" data-download="csv"&gt;&lt;img src="https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/download-csv-filled.svg" alt="CSV download button" style="height: 25px; width: 25px"&gt;&amp;nbsp;&amp;nbsp;Download Data&lt;/a&gt;&lt;/li&gt;'
        tab += '&lt;li class="dropdown-item"&gt;&lt;a href="#" data-download="excel"&gt;&lt;img src="https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/microsoft-excel-filled.svg" alt="Excel download button" style="height: 25px; width: 25px"&gt;&amp;nbsp;&amp;nbsp;Excel Add-in&lt;/a&gt;&lt;/li&gt;'
        tab += '&lt;li class="dropdown-item"&gt;&lt;a href="#" data-download="api"&gt;&lt;img src="https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/download-api.svg" alt="API download button" style="height: 25px; width: 25px"&gt;&amp;nbsp;&amp;nbsp;API Access&lt;/a&gt;&lt;/li&gt;'
        tab += '&lt;/ul&gt;&lt;/li&gt;'

        if (
            URL.indexOf("/currencies") &gt; -1 || URL.indexOf("/stocks") &gt; -1 || URL.indexOf("/bonds") &gt; -1 || URL.indexOf("/commodities") &gt; -1 || URL.indexOf("/crypto") &gt; -1 || URL.indexOf(":") &gt; -1 ||
            URL.indexOf("/forecast/currency") &gt; -1 || URL.indexOf("/forecast/stock-market") &gt; -1 || URL.indexOf("/forecast/government-bond-10y") &gt; -1 || URL.indexOf("/forecast/commodity") &gt; -1 || URL.indexOf("/forecast/crypto") &gt; -1 ||
            // !isLoggedIn because API endpoints are still not implemented
            (!isLoggedIn &amp;&amp; URL.split('/').length == 3 &amp;&amp; (['indicators', 'forecast'].includes(URL.split('/')[2]) || ['country-list','forecastt'].includes(URL.split('/')[1])))) {

            var download_link = "https://docs.tradingeconomics.com/";

            if (!isLoggedIn) {

                if (!hasTabs) {
                    console.log("/js/pagemenu", "appending tab")

                    if (IsMobile) {
                        var tab = "&lt;li&gt;&lt;a href='" + download_link + "' data-download='csv' class='nav-link'&gt;&lt;i class='bi bi-download d-none d-lg-inline'&gt;&lt;/i&gt;&amp;nbsp;Export&lt;/a&gt;&lt;/li&gt;";
                        $('#pagemenutabs').append(tab);
                    }
                    else {
                        $('#pagemenutabs').append(tab);
                    }
                    hasTabs = true;
                    snapshotPage = true;
                }
            }
            else {

                var download_link = "https://api.tradingeconomics.com/";

                if (URL.indexOf("/forecast/commodity") &gt; -1) {
                    download_link += "/markets/forecasts/commodity";
                } else if (URL.indexOf("/forecast/currency") &gt; -1) {
                    download_link += "/markets/forecasts/currency";
                } else if (URL.indexOf("/forecast/stock-market") &gt; -1) {
                    download_link += "/markets/forecasts/index";
                } else if (URL.indexOf("/forecast/government-bond-10y") &gt; -1) {
                    download_link += "/markets/forecasts/bond";
                } else if (URL.indexOf("/forecast/crypto") &gt; -1) {
                    download_link += "/markets/forecasts/crypto";
                } else if (URL.indexOf("/currencies") &gt; -1) {
                    download_link += "markets/currency";
                } else if (URL.indexOf("/stocks") &gt; -1) {
                    download_link += "markets/index";
                } else if (URL.indexOf("/bonds") &gt; -1) {
                    download_link += "markets/bond";
                } else if (URL.indexOf("/commodities") &gt; -1) {
                    download_link += "markets/commodities";
                } else if (URL.indexOf("/crypto") &gt; -1) {
                    download_link += "markets/crypto";
                } else if (URL.indexOf(":") &gt; -1) {
                    var currCsvDownload = $("#data a.export-btn-csv").attr("href");
                    download_link = currCsvDownload;
                }
                if (!hasTabs) {
                    var tab = "&lt;li class='nav-item'&gt;&lt;a class ='nav-link' href='" + download_link + "' data-download='csv'&gt;&lt;i class='bi bi-download'&gt;&lt;/i&gt;&amp;nbsp;Export&lt;/a&gt;&lt;/li&gt;";
                    $('#pagemenutabs').append(tab);
                    hasTabs = true;
                }
            }

            snapshotPage = true;
        }
        else if (URL.indexOf("/stock-market") &gt; -1 || URL.indexOf("/currency") &gt; -1 || URL.indexOf("/commodity/") &gt; -1 || URL.indexOf("yield") &gt; -1) {
            if (!isLoggedIn &amp;&amp; !hasTabs) {
                console.log('@pagemmenu - adding download tab')
                if (IsMobile) {
                    var tab = "&lt;li class='nav-item'&gt;&lt;a class ='nav-link' href='" + download_link + "' data-download='csv'&gt;&lt;i class='bi bi-download d-none d-lg-inline'&gt;&lt;/i&gt;&amp;nbsp;Export&lt;/a&gt;&lt;/li&gt;";
                    $('#pagemenutabs').append(tab);
                    hasTabs = true;
                }
                else {
                    $('#pagemenutabs').append(tab);
                }
                hasTabs = true;
            }
        }
        else if ($("#menu-download-btn") &amp;&amp; $("#menu-download-btn").length &gt; 0) {
            indicatorPage = true;
            buildDownloadList($("#menu-download-btn"));
            $("#menu-download-btn").click(function () {
                ga('event', 'te_click_data_dropdown');
            });
        }
        else if ($(".calendar-download") &amp;&amp; $(".calendar-download").length &gt; 0) {
            calendarPage = true;
            buildDownloadButton($(".calendar-download"));
        }
        else if ($(".indicators-download") &amp;&amp; $(".indicators-download").length &gt; 0) {
            buildDownloadButton($(".indicators-download"));
        }

        function downloadBtnClickEvent(event) {
            console.log("download click ..");
            var downloadBtn = $(event.target).closest("a");
            var dataDownload = $(downloadBtn).attr("data-download");
            if (!dataDownload)
                return;
            console.log("data-download = " + dataDownload);

            var modalTitle = "";
            var modalContent = "";
            var modalFooter = "";
            var loginReturn = "https://sso.tradingeconomics.com/?returnurl=https://tradingeconomics.com" + URL;
            var loginAction = "&lt;a class='btn btn-outline-secondary' href='" + loginReturn + "' target='_blank'&gt;" + (IsMobile ? "Login" : "Member?  &lt;b&gt;Login&lt;/b&gt;") + "&lt;/a&gt;";
            var GAEvent = null;

            var gCategory = null;
            if (indicatorPage) {
                gCategory = 'Indicator';
                if (gCategory &amp;&amp; URL.indexOf("forecast") &gt; -1) { gCategory += '_forecast' };
            }
            else if (calendarPage) {
                gCategory = 'Calendar';
                if (gCategory &amp;&amp; URL.indexOf("forecast") &gt; -1) { gCategory += '_forecast' };
            }
            else if (snapshotPage) {
                gCategory = 'Snapshot';
                if (URL.indexOf("/forecast/commodity") &gt; -1) gCategory = "markets_forecasts_commodity";
                else if (URL.indexOf("/forecast/currency") &gt; -1) gCategory = "markets_forecasts_currency";
                else if (URL.indexOf("/forecast/stock-market") &gt; -1) gCategory = "markets_forecasts_index";
                else if (URL.indexOf("/forecast/government-bond-10y") &gt; -1) gCategory = "_markets_forecasts_bond";
                else if (URL.indexOf("/forecast/crypto") &gt; -1) gCategory = "markets_forecasts_crypto";
                else if (URL.indexOf("/currencies") &gt; -1) gCategory = "markets_currency";
                else if (URL.indexOf("/stocks") &gt; -1) gCategory = "markets_index";
                else if (URL.indexOf("/bonds") &gt; -1) gCategory = "markets_bond";
                else if (URL.indexOf("/commodities") &gt; -1) gCategory = "markets_commodities";
                else if (URL.indexOf("/crypto") &gt; -1) gCategory = "markets_crypto";
                else if (URL.indexOf(":") &gt; -1) gCategory = "markets_symbols";
                else if (URL.indexOf("/country-list/") &gt; -1) gCategory = 'category';
                else if (URL.indexOf("/forecast/") &gt; -1) gCategory = 'category_forecast';
                else if (URL.indexOf("forecast") &gt; -1) gCategory = 'country_forecast';
                else if (URL.indexOf("/indicators") &gt; -1) gCategory = 'country';
            }

            switch (dataDownload) {
                case "csv":
                    if (isLoggedIn) {
                        GAEvent = 'te_click_csv_download';
                        ga('event', GAEvent);
                        console.log('GAEvent', GAEvent);
                        downloadItem(event.target, dataDownload);
                        return;
                    } else {
                        //modalTitle = "&lt;b&gt;Join Trading Economics&lt;/b&gt;";
                        modalContent = "Trading Economics has more than 20 million economic indicators for nearly 200 countries, plus exchange rates, government bond yields, stock indexes, shares and  commodity prices. ";
                        modalContent += "Subscription users can use our site to export data in &lt;b&gt;CSV&lt;/b&gt;, &lt;b&gt;JSON&lt;/b&gt; or &lt;b&gt;XML&lt;/b&gt;. Users can get it directly through an &lt;b&gt;Excel&lt;/b&gt; add-in. ";
                        modalContent += "Clients can also use an &lt;b&gt;API&lt;/b&gt; to have direct access to our data, to query our real-time economic calendar and to subscribe to updates from any programming language.";
                        modalFooter += "&lt;div style='text-align:center;'&gt;&lt;div class='btn-group'&gt;&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/analytics/features.aspx' target='_blank'&gt;Learn More&lt;/a&gt;";
                        modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/analytics/pricing.aspx' target='_blank'&gt;Pricing&lt;/a&gt;";
                        modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/contact.aspx?subject=data' target='_blank'&gt;" + (IsMobile ? "Contact" : "Questions? &lt;b&gt;Contact us&lt;/b&gt;") + "&lt;/a&gt;";
                        modalFooter += loginAction;
                        modalFooter += "&lt;/div&gt;&lt;/div&gt;"

                        GAEvent = 'te_click_csv';
                        if (gCategory != null) GAEvent += '_' + gCategory.toLowerCase();
                    }
                    break;
                case "excel":
                    modalTitle = "&lt;b&gt;Trading Economics Excel Add-in&lt;/b&gt;";
                    modalContent += "The Trading Economics Excel Addin allows users with an active subscription to access our data directly from excel. "
                    modalContent += "Trading Economic provides more than 20 million economic indicators for nearly 200 countries, plus exchange rates, government bond yields, stock indexes, and commodity prices. ";
                    modalFooter = "&lt;div style='text-align:center;'&gt;&lt;div class='btn-group'&gt;&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/analytics/excel.aspx' target='_blank'&gt;Learn More&lt;/a&gt;";
                    modalFooter += "&lt;a class='btn btn-outline-secondary'  data-download='excel-addin'&gt;Download Addin&lt;/a&gt;";
                    modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/contact.aspx?subject=excel' target='_blank'&gt;Questions? &lt;b&gt;Contact us&lt;/b&gt;&lt;/a&gt;";
                    if (!isLoggedIn)
                        modalFooter += loginAction;
                    modalFooter += "&lt;/div&gt;&lt;/div&gt;";

                    GAEvent = 'te_click_excel';
                    if (gCategory != null) GAEvent += '_' + gCategory.toLowerCase();

                    break;
                case "api":
                    modalTitle = "&lt;b&gt;Trading Economics API&lt;/b&gt;";
                    modalContent = "&lt;div&gt;";
                    modalContent += "API Users have direct access to our economic data from any programming language, can query our real-time calendar, retrieve financial market quotes and subscribe to live updates. ";
                    modalContent += "Trading Economics provides more than 20 million economic indicators for nearly 200 countries, plus exchange rates, government bond yields, stock indexes, and commodity prices."
                    modalContent += "&lt;/div&gt;";
                    modalFooter = "&lt;div style='text-align:center;'&gt;&lt;div class='btn-group'&gt;&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/api/' target='_blank'&gt;Learn More&lt;/a&gt;";
                    modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://docs.tradingeconomics.com/' target='_blank'&gt;API Docs&lt;/a&gt;";
                    modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/api/contact.aspx' target='_blank'&gt;Questions? &lt;b&gt;Contact us&lt;/b&gt;&lt;/a&gt;";
                    if (!isLoggedIn)
                        modalFooter += loginAction;
                    modalFooter += "&lt;/div&gt;&lt;/div&gt;";

                    GAEvent = 'te_click_api';
                    if (gCategory != null) GAEvent += '_' + gCategory.toLowerCase();

                    break;
                case "api-calendar":
                    modalTitle = "&lt;b&gt;Trading Economics API&lt;/b&gt;"
                    modalContent = "The Trading Economics API provides you with direct access to our calendar,  instant updates after economic events get released, historical data on thousands of indicators and live market quotes. ";

                    modalFooter = "&lt;div style='text-align:center'&gt;&lt;div class='btn-group'&gt;&lt;a class='btn btn-outline-secondary' href='../api/?source=calendar' target='_blank'&gt;Learn More&lt;/a&gt;";
                    modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/api/contact.aspx?subject=api+calendar' target='_blank'&gt;Any question? &lt;b&gt;Contact us&lt;/b&gt;&lt;/a&gt;";
                    if (!isLoggedIn)
                        modalFooter += loginAction;
                    modalFooter += "&lt;/div&gt;&lt;/div&gt;";

                    GAEvent = 'te_click_calendar_api';
                    break;

                case "excel-addin":
                    GAEvent = 'te_click_excel';
                    window.location = 'https://github.com/tradingeconomics/tradingeconomics/raw/master/Excel/All_Releases/ExcelAddInDeploy_latest.msi';
                    return;
                    break;

                case "forecast":
                    //modalTitle = "&lt;b&gt;Trading Economics Forecasts&lt;/b&gt;";
                    modalContent += "At TRADING ECONOMICS, our forecasts rely on our proprietary global macro model and analysts expectations. We believe that global economies and financial markets are closely intertwined. Our approach involves establishing a general directional bias and then utilizing computer algorithms to calculate price levels. "
                    modalContent += "&lt;br&gt;&lt;br&gt;We have five standard investment ratings: "
                    modalContent += "&lt;br&gt;&lt;br&gt;&lt;img class='recommendation-img' src='//d3fy651gv2fhd3.cloudfront.net/images/recommendations.png' /&gt;"
                    modalContent += "&lt;br&gt;&lt;br&gt;&lt;p&gt;&lt;b&gt;Disclaimer&lt;/b&gt;&lt;/p&gt;";
                    modalContent += "Forecasts and ratings displayed on TRADING ECONOMICS are for informational purposes only. Trading involves a significant risk of loss and may not be suitable for all investors. Therefore, we advise users to exercise caution and do their own research before making any financial decisions."
                    modalFooter += "&lt;/div&gt;&lt;/div&gt;"
                    GAEvent = 'te_click_forecast';
            }

            if (GAEvent != null) {
                ga('event', GAEvent);
                console.log('GAEvent: ', GAEvent);
            }

            showDownloadModal(modalTitle, modalContent, modalFooter);
        }


        function showDownloadModal(modalTitle, modalContent, modalFooter) {
            var modal = "&lt;div class ='modal' id='downloadModal' tabindex='-1' role='dialog' aria-labelledby='myModalLabel'&gt;";
            modal += "&lt;div class='modal-dialog modal-dialog-centered' role='document'&gt;";
            modal += "&lt;div class='modal-content'&gt;";
            modal += "&lt;div class='modal-header'&gt;&lt;div class='modal-title'&gt;&lt;/div&gt;&lt;button type='button' class ='btn-close' data-bs-dismiss='modal' aria-label='Close'&gt;&lt;/button&gt;&lt;/div&gt;";
            modal += "&lt;div class='modal-body' style='text-align:justify;'&gt;&lt;/div&gt;"
            modal += "&lt;div class='modal-footer'&gt;&lt;/div&gt;"
            modal += "&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;"

            var jModal = $(modal);

            $(jModal).find(".modal-title").html(modalTitle);

            // define the modal content
            if (modalContent)
                $(jModal).find(".modal-body").html(modalContent);
            else
                $(jModal).find(".modal-body").remove();

            // define the modal footer
            if (modalFooter)
                $(jModal).find(".modal-footer").html(modalFooter);
            else
                $(jModal).find(".modal-footer").remove();

            $(jModal).on('show.bs.modal', function (e) {
                $(".navbar").css("padding-right", "17px");
                $(".pagemenu").css("padding-right", "17px");
                $(".pagetabs").css("padding-right", "17px");
            });

            $(jModal).on('hide.bs.modal', function (e) {
                $(".navbar").css("padding-right", "");
                $(".pagemenu").css("padding-right", "");
                $(".pagetabs").css("padding-right", "");
            });


            $(jModal).modal("show");
        }

        function buildDownloadList(downloadBtn) {
            console.log("/js/pagemenu", "buildDownloadList", downloadBtn)
            downloadBtn.addClass("dropdown-toggle");
            downloadBtn.attr("data-bs-toggle", "dropdown");
            var csvLink = $("&lt;li&gt;&lt;a href='#' data-download='csv'&gt;&lt;img src='https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/download-csv-filled.svg' alt='CSV download button' style='height: 25px; width: 25px'&gt;&amp;nbsp;&amp;nbsp;Download Data&lt;/a&gt;&lt;/li&gt;");
            var excelLink = $("&lt;li&gt;&lt;a href='#' data-download='excel'&gt;&lt;img src='https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/microsoft-excel-filled.svg' alt='Excel download button' style='height: 25px; width: 25px'&gt;&amp;nbsp;&amp;nbsp;Excel Add-in&lt;/a&gt;&lt;/li&gt;");
            var apiLink = $("&lt;li&gt;&lt;a href='#' data-download='api'&gt;&lt;img src='https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/download-api.svg' alt='API download button' style='height: 25px; width: 25px'&gt;&amp;nbsp;&amp;nbsp;API Access&lt;/a&gt;&lt;/li&gt;");
            var dataportalLink = $("&lt;li&gt;&lt;a href='https://data.tradingeconomics.com'&gt;&lt;i class='bi bi-save2-fill ms-1'&gt;&lt;/i&gt;&amp;nbsp;&amp;nbsp;Data Portal&lt;/a&gt;&lt;/li&gt;");

            // THIS IS A HACK SO WE DONT NEED TO REWRITE THE LINK BUILT IN THIS MOMENT
            var currCsvDownload = $("#data a.export-btn-csv").attr("href");
            if (currCsvDownload)
                csvLink = $("&lt;li&gt;&lt;a href='" + currCsvDownload + "' data-download='csv' target='_blank'&gt;&lt;img src='https://d3fy651gv2fhd3.cloudfront.net/images/downloadicons/download-csv-filled.svg' alt='CSV download button' style='height: 25px; width: 25px'&gt;&amp;nbsp;&amp;nbsp;Download Data&lt;/a&gt;&lt;/li&gt;");
            var downloadList = $("&lt;ul id='menu-download-dropdown' class='dropdown-menu'&gt;");
            downloadList.append(csvLink);
            downloadList.append(excelLink);
            downloadList.append(apiLink);

            if (isLoggedIn) downloadList.append(dataportalLink);

            downloadBtn.after(downloadList);
        }

        function buildDownloadButton(container) {
            if (isLoggedIn) {
                var downloadBtn = $("&lt;a id='HyperLinkToDownload' href='https://api.tradingeconomics.com/calendar' class='btn btn-info' data-download='csv'&gt;&lt;i class='bi bi-download'&gt;&lt;/i&gt;&lt;span class='d-none d-lg-inline'&gt;&amp;nbsp;Download&lt;/span&gt;&lt;/a&gt;");
                var apiBtn = $("&lt;a id='HyperLinkToAPI' href='#' class='btn btn btn-outline-secondary' data-download='api-calendar'&gt;&lt;i class='bi bi-grid-fill hidden-sm'&gt;&lt;/i&gt;&amp;nbsp;API&lt;/a&gt;");
                $(container).append(downloadBtn);
                $(container).append(apiBtn);
            } else {
                var downloadBtn = $("&lt;a id='HyperLinkToDownload' href='https://api.tradingeconomics.com/calendar' class='btn btn-outline-secondary' data-download='api-calendar'&gt;&lt;i class='bi bi-download'&gt;&lt;/i&gt;&lt;span class='d-none d-lg-inline'&gt;&amp;nbsp;Download&lt;/span&gt;&lt;/a&gt;");
                $(container).append(downloadBtn);
            }
        }


        var lock_download = false;
        function downloadItem(target, format) {

            target = $(target).closest('a');

            if (!target || target.length == 0 || !$(target).is('a')) {
                console.log('Download link not found');
                return;
            }

            if (lock_download)
                return;

            lock_download = true;

            var url = $(target).attr('href');
            console.log('url to download = ' + url);

            var d_type = format;
            if (format == 'csv') {
                url = url.replace('format=csv', 'format=json');
                d_type = 'json';
            }

            var loader = $("&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;div class='loader' style='height: 15px;width: 15px;display: inline-block;vertical-align: text-bottom;'&gt;&lt;/div&gt;");
            $(target).append(loader);

            $.ajax({
                url: url,
                type: "GET",
                dataType: d_type,
                xhrFields: {
                    withCredentials: true
                },
            }).done(function (data, status, xhr) {
                console.log('SUCCESS');
                console.log('status = ' + xhr.status);
                console.log('data = ' + data.length);

                // ga event for logged in successful CSV download
                if (indicatorPage) {
                    var GAEvent = 'te_click_data_dropdown'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent:', GAEvent);
                }
                else if (calendarPage) {
                    var GAEvent = 'te_click_calendar'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent:', GAEvent);
                }
                else if (snapshotPage) {
                    var GAEvent = 'te_click_snapshot'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent:', GAEvent);
                }
                var filename = buildFilename(url, format);
                downloadData(data, filename, format);

            }).fail(function (xhr, status, error) {
                console.log('ERROR');
                console.log('status = ' + xhr.status);
                console.log('error message = ' + xhr.responseText)

                // ga event for logged in failed CSV download
                if (indicatorPage) {
                    var GAEvent = 'te_click_data_dropdown'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent::', GAEvent);
                }
                else if (calendarPage) {
                    var GAEvent = 'te_click_calendar'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent::', GAEvent);
                }
                else if (snapshotPage) {
                    var GAEvent = 'te_click_snapshot'
                    ga('event', GAEvent, { 'format': format });
                    console.log('GAEvent::', GAEvent);
                }
                if (xhr.status) {
                    switch (xhr.status) {
                        case 401: // unauthorized
                            launchInvalidKeyModal();
                            break;
                        case 403: // forbidden
                            launchTrialOverModal();
                            break;
                        case 400: // bad request
                            launchBadRequestModal();
                            break;
                        case 409: // conflict (more requests per second than allowed)
                            launchThrottleModal();
                            break;
                        default:
                            console.log('Unhandled status = ' + xhr.status)
                            var redirect_url = '';
                            if (TECountry) {
                                redirect_url = 'https://data.tradingeconomics.com/data/export/bycountry?country=' + TECountry;
                            } else {
                                redirect_url = 'https://data.tradingeconomics.com/';
                            }
                            console.log('redirecting to: ' + redirect_url);
                            window.open(redirect_url, '_blank');
                            break;
                    }
                }
            }).always(function (xhr, status, error) {
                lock_download = false;
                console.log('done downloading!');
                loader.remove();
            });
        };

        function buildFilename(url, format) {
            var filename = decodeURI(url);
            filename = filename.replace("https://api.tradingeconomics.com/", "");
            var questionMark = filename.indexOf('?');
            if (questionMark != -1)
                filename = filename.substring(0, questionMark);
            filename = filename.replace(/\//g, '_');
            filename = filename.replace(/\s/g, '_');
            filename = filename.replace(/:/g, '_');
            filename = filename.replace(/-/g, '_');
            return filename + '.' + format;
        }

        function downloadData(data, filename, type) {
            var dataFile = null;

            switch (type) {
                case "csv":
                    var csv = convertArrayOfObjectsToCSV({ data: data });
                    if (csv == null) return;
                    // create the csv file
                    var dataFile = new Blob([csv], { type: "text/csv;charset=utf-8" });
                    break;
                case "json":
                    var dataFile = new Blob([JSON.stringify(data)], { type: "text/json;charset=utf-8" });
                    break;
                case "xml":
                    var dataFile = new Blob([new XMLSerializer().serializeToString(data.documentElement)], { type: "text/plain;charset=utf-8" });
                    break;
            }

            if (dataFile != null) {
                var anchor = document.createElement('a');
                anchor.href = window.URL.createObjectURL(dataFile);
                anchor.setAttribute("d-none", true);
                anchor.setAttribute("target", "_self");
                anchor.setAttribute("download", filename);
                document.body.appendChild(anchor);
                anchor.click();
                anchor.remove();
            }
        }

        /* Download CSV from: https://halistechnology.com/2015/05/28/use-javascript-to-export-your-data-as-csv/ */
        function convertArrayOfObjectsToCSV(args) {
            var result, ctr, keys, columnDelimiter, lineDelimiter, data;

            data = args.data || null;
            if (data == null || !data.length) {
                return null;
            }

            columnDelimiter = args.columnDelimiter || ',';
            lineDelimiter = args.lineDelimiter || '\r\n';

            keys = Object.keys(data[0]);

            result = '';
            result += keys.join(columnDelimiter);
            result += lineDelimiter;

            data.forEach(function (item) {
                ctr = 0;
                keys.forEach(function (key) {
                    if (ctr &gt; 0) result += columnDelimiter;

                    result += item[key];
                    ctr++;
                });
                result += lineDelimiter;
            });

            return result;
        }

        function errorModal(title, text, actionLink, actionMsg, contactSubject) {
            var modalTitle = "&lt;span&gt;&lt;b&gt;" + title + "&lt;/b&gt;&lt;/span&gt;";
            var modalFooter = "&lt;div style='text-align:center;'&gt;&lt;div class='btn-group'&gt;";
            if (actionLink &amp;&amp; actionMsg)
                modalFooter += "&lt;a class='btn btn-primary' href='" + actionLink + "'&gt;" + actionMsg + "&lt;/a&gt;";
            modalFooter += "&lt;a class='btn btn-outline-secondary' href='https://tradingeconomics.com/contact.aspx?subject=" + contactSubject + "' target='_blank'&gt;Any question? &lt;b&gt;Contact us&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;";
            showDownloadModal(modalTitle, text, modalFooter);
        }

        function launchTrialOverModal(experience) {
            errorModal("Trading Economics Data",
                "Activate your plan to get more data from Trading Economics",
                "https://billing.tradingeconomics.com/plans.aspx?activate=true",
                "ACTIVATE",
                "account+limit");
        }

        function launchInvalidKeyModal() {
            errorModal("Trading Economics Data",
                "Trading Economics provides its premium members with access to more than 20 million indicators for 196 countries plus historical/delayed/live quotes for exchange rates, stocks, indexes, bonds and commodity prices. Subscribe to a plan to download data in a easy to use web interface, using our excel addin or our API.",
                "https://billing.tradingeconomics.com/plans.aspx?lead=true",
                "Get Started",
                "Subscription+Plans");
        }

        function launchThrottleModal() {
            errorModal("Trading Economics Data",
                "Limit of request per second reached",
                null,
                null,
                "API+Access");
        }

        function launchBadRequestModal() {
            errorModal("Trading Economics Data",
                "Something went wrong with the request, please contact support@tradingeconomics.com, or click the button bellow",
                "https://tradingeconomics.com/api/contact.aspx?subject=Bad+Request",
                "CONTACT SUPPORT",
                "API+Access");
        }
    });
&lt;/script&gt;
&lt;style&gt;
    .table-minimizer {
        height: 50px; 
        width:100%; 
        padding-top: 12px; 
        color: #000; 
        cursor: pointer;
        background-color: #fff;
        /* background: -webkit-linear-gradient(bottom, rgba(255, 255, 255, 0.7), #ffffff);
        background: -o-linear-gradient(bottom, rgba(255, 255, 255, 0.7), #ffffff);
        background: -moz-linear-gradient(bottom, rgba(255, 255, 255, 0.7), #ffffff);
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0.7), #ffffff); */
        position: absolute; 
        bottom:0; 
        font-weight: 500; 
        text-align: center;
        box-shadow: 0px -2px 4px 0px rgba(4, 60, 174, 0.06);;
    }
    body.dark-theme .table-minimizer {
        height: 40px; padding-top: 5px; color: #fff;
        background-color: #333;
        box-shadow: 0px -2px 4px 0px rgba(215, 223, 240, 0.06);;
        /* background: -webkit-linear-gradient(bottom, #333,  #222);
        background: -o-linear-gradient(bottom, #333,  #222);
        background: -moz-linear-gradient(bottom, #333,  #222);
        background: linear-gradient(to bottom, #333, #222); */
    }
&lt;/style&gt;
&lt;script&gt;
    $(function(){
        TableMinimizer = {
            init: function () {
                $('.table-minimize').each(function (i, item) {
                    var element = $(item),
                        elementHeight = element.outerHeight(),
                        maxHeight = element.attr('data-minimizer-height') ? Number(element.attr('data-minimizer-height')) : 300;
                    //console.log('table height:', elementHeight, 'maxHeight: ', maxHeight);
                    if (elementHeight &lt;= maxHeight) {
                        return;
                    }

                    //apply minimizer
                    var step = element.attr('data-minimizer-step') ? Number(element.attr('data-minimizer-step')) : 300,
                        stepCount = 1;
                        icon = '&lt;svg style="width:24px;height:24px; float: right;" viewBox="0 0 24 24"&gt;&lt;path fill="#000" d="M7,10L12,15L17,10H7Z" /&gt;&lt;/svg&gt;',
                            mask = $('&lt;div class="table-minimizer"&gt;&lt;div style="display: table; margin: 0px auto;"&gt;&lt;span style="display: inline-block;padding-top: 3px;text-decoration: underline;"&gt;&lt;/span&gt; '+icon+'&lt;/div&gt; &lt;/div&gt;');
                    element.append(mask);
                    element.css({
                        height: maxHeight
                    });

                    mask.on('click', function (e) {
                        stepCount++;
                        var newHeigh = stepCount * step;
                        //SHOW ALL
                        element.css({
                            height: elementHeight
                        });
                        mask.hide();
                        return;
                        if (newHeigh &gt; elementHeight) {
                            element.css({
                                height: elementHeight
                            });
                            mask.hide();
                            return;
                        }
                        element.css({
                            height: newHeigh
                        });
                    });

                });
            }
        };        
        TableMinimizer.init();
    });
&lt;/script&gt;
&lt;style&gt;
    .morelink {
        text-decoration: none;
        outline: none;
        font-size: 85%;
        color: #808080;
    }
    .morecontent span {
        display: none;
    }
&lt;/style&gt;
&lt;script&gt;
    $(function(){
        console.log('Shorten Text')
        var showChar = 300;
        var ellipsestext = "...";
        var moretext = "more";
        var lesstext = "less";
        $('.more').each(function () {
            var content = $(this).html();
            if (content.length &gt; showChar) {
                var c = content.substr(0, showChar);
                var h = content.substr(showChar, content.length - showChar);
                var html = c + '&lt;span class="moreellipses"&gt;' + ellipsestext + '&lt;/span&gt;&lt;span class="morecontent"&gt;&lt;span&gt;' + h + '&lt;/span&gt;&amp;nbsp;&lt;a href="" class="morelink"&gt;' + moretext + '&lt;/a&gt;&lt;/span&gt;';
                $(this).html(html);
            }
        });

        $(".morelink").click(function () {
            if ($(this).hasClass("less")) {
                $(this).removeClass("less");
                $(this).html(moretext);
            } else {
                $(this).addClass("less");
                $(this).html(lesstext);
            }
            $(this).parent().prev().toggle();
            $(this).prev().toggle();
            return false;
        });
    });
&lt;/script&gt;
&lt;style&gt;
    .te-stream-title-div {
        padding-bottom: 5px;
    }
    .te-stream-item-3 {
        background-color: #f6cbcb;
    }

    .te-stream-item-2 {
        background-color: #eff3ff
    }
    .te-stream-country {
        background-color: #333;
    }

    .te-stream-category {
        background-color: #858585;
    }
&lt;/style&gt;
&lt;script type="text/javascript"&gt;
    console.log("Stream JS");
    var streamBaseURL = '/ws/stream.ashx';
    var streamStart = 0;
    var streamSize = 20;
    var streamHeight = 1000;
    var streamPreviousTitle = '';
    var streamIsLoading = false;
    var IsTicker = true;
    if (window.location.pathname.indexOf('/stream') !== -1 ||
        window.location.pathname.indexOf('/news') !== -1)
        IsTicker = false;
    function getParameterByName(name, url) {
        if (!url) url = window.location.href;
        name = name.replace(/[\[\]]/g, "\\$&amp;");
        var regex = new RegExp("[?&amp;]" + name + "(=([^&amp;#]*)|&amp;|#|$)"),
            results = regex.exec(url);
        if (!results) return null;
        if (!results[2]) return '';
        return decodeURIComponent(results[2].replace(/\+/g, " "));
    }
    function getItem(j, isPrepend) {
        //console.log(JSON.stringify(j))
        if (j.title) {
            if (streamPreviousTitle != j.title) {
                if (!j.url) j.url = '/';

                var item = "&lt;li id='" + j.ID + "' ";
                item += "class='list-group-item te-stream-item";
                if (!IsTicker &amp;&amp; j.importance) {
                    if (j.importance == 3) item += " te-stream-item-3";
                    else if (j.importance == 2) item += " te-stream-item-2";
                }
                item += "'&gt;"

                item += "&lt;div class='te-stream-title-div d-flex justify-content-between'&gt;";
                if (IsTicker) {
                    item += "&lt;b&gt;" + j.title + "&lt;/b&gt;";
                }
                else {

                    var titleClass = 'te-stream-title'

                    if (j.importance) {
                        if (j.importance == 3) titleClass = "te-stream-title-3";
                        else if (j.importance == 2) titleClass = "te-stream-title-2";
                    }
                    item += "&lt;a class='" + titleClass + "' href=" + j.url + "&gt;&lt;b&gt;" + j.title + "&lt;/b&gt;&lt;/a&gt;";

                    
                    item += "&lt;div&gt;"
                    item += '&lt;a class="badge small te-stream-country" href="/stream?c=' + j.country.toLowerCase().replace(" ", "+") + '"&gt;' + j.country + '&lt;/a&gt;';
                    if (j.category &amp;&amp; j.category != j.country) {
                        item += '&amp;nbsp;&lt;a class="badge small te-stream-category" href="/stream?i=' + j.category.toLowerCase().replace(" ", "+") + '"&gt;' + j.category + '&lt;/a&gt;';
                    }
                    
                    item += '&lt;/div&gt;'
                }
                item += "&lt;/div&gt;";

                if (j.html) item += j.html;
                else if (j.description) item += j.description;
                if (j.image) item += '&lt;br/&gt;&lt;img src="' + j.image + '"&gt;&lt;/img&gt;';
                if (j.diff) item += '&lt;br/&gt;&lt;small&gt;' + j.diff + '&lt;/small&gt;';
                item += '&lt;/li&gt;';

                streamPreviousTitle = j.title;

                if (isPrepend) {
                    $("#stream").prepend(item);
                    /*
                    setTimeout(function () {
                        $("#" + j.ID).css("backgroundColor", '#fff');
                    }, 2000)
                    */
                    streamHeight = $("#stream").height();
                }

                return item;
            }
            else {
                console.log("Skipping Repeated Title: " + j.title);
                return null;
            }
        }
        else {
            console.log("Missing Title");
            return null;
        }
    }
    function getresult(start, size) {
        console.log("Stream getresult");
        var streamURL = streamBaseURL + "?start=" + start + "&amp;size=" + size;

        if (IsTicker) {
            console.log("Stream for Ticker");
            start = start + 3;
            site = 10;
            streamURL = streamBaseURL + "?start=" + start + "&amp;size=" + size;
            if (TECountry) streamURL += "&amp;c=" + TECountry;
            if (TECategory) streamURL += "&amp;i=" + TECategory;
        }
        else if (location.pathname.indexOf('/news') !== -1 &amp;&amp; location.pathname.split('/').length == 3) {
            console.log("Stream for News");
            var sCountry = location.pathname.split('/')[1];
            if (sCountry) {
                sCountry = sCountry.replace('-', ' ');
                streamURL += "&amp;c=" + sCountry;
            };
        }
        else if (location.pathname.indexOf('/stream') !== -1) {
            var sCategory = getParameterByName('i');
            if (sCategory) streamURL += "&amp;i=" + sCategory;
            var sCountry = getParameterByName('c');
            if (sCountry) streamURL += "&amp;c=" + sCountry;
        }
        else {
            return;
        }
        console.log(streamURL);
        $.ajax({
            url: streamURL,
            type: "GET",
            dataType: "json",
            beforeSend: function () {
                $('#spinner').show();
                streamIsLoading = true;
            },
            complete: function () {
                $('#spinner').hide();
                streamIsLoading = false;
            },
            success: function (data) {
                appendResult(data);
                if (start == 0) {
                    $('#stream-btn').css("visibility", "visible");
                    if (sCategory || sCountry) {
                        var sFilter = sCategory || sCountry;
                        if (sFilter == "economy") $('#streamTabEconomy').tab('show');
                        else if (sFilter == "markets") $('#streamTabMarkets').tab('show');
                        else {
                            //var sFilterDiv = '&lt;a class="btn btn-outline-secondary" href="/stream"&gt;' + sFilter + '&amp;nbsp;&lt;i class="glyphicon glyphicon-filter"&gt;&lt;/i&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;';$("#stream").prepend(sFilterDiv);
                            //OLD - $('#streamTabs').append('&lt;li id="streamTabFilter" class="active" style="text-transform:capitalize;"&gt;&lt;a&gt;' + sFilter + '&lt;/a&gt;&lt;/li&gt; ');
                            $('#pagemenutabs li a').removeClass("active")
                            $('#pagemenutabs').append('&lt;li id="streamTabFilter" class="nav-item" style="text-transform:capitalize;"&gt;&lt;a class="nav-link active"&gt;' + sFilter + '&lt;/a&gt;&lt;/li&gt; ');

                        }
                    }
                }
            },
            error: function () {
                console.error("Stream Error")
            }
        });
    }
    function appendResult(data) {
        console.log("Stream Appending Results");
        //console.log(data);
        var now = (new Date).getTime();
        var item = '';
        var items = [];
        $.each(data, function (i, j) {
            
            //console.log(j);
            console.log(location.href.indexOf('?'))
            if (location.href.indexOf('/stream') &gt; -1 &amp;&amp; location.href.indexOf('?') === -1  &amp;&amp; j.category === 'stocks') {
                console.log(j)
                return
            }
            var diff = '';
            var diffMs = now - new Date(j.date).getTime(); // Miliseconds
            var offset = new Date().getTimezoneOffset() * 60 * 1000;
            diffMs = diffMs + offset;
            if (diffMs &lt; 0) {
                diff = 'few seconds ago';

            }
            else if (diffMs &lt; 120000) {
                var diffS = Math.round(diffMs / 1000); // Seconds
                diff = diffS + ' seconds ago';
            }
            else if (diffMs &lt; 7200000) {
                var diffMins = Math.round(diffMs / 60000); // minutes
                diff = diffMins + ' minutes ago';
            }
            else if (diffMs &lt; 172800000) {
                var diffHrs = Math.round(diffMs / 3600000); // hours
                diff = diffHrs + ' hours ago';
            }
            else {
                var diffDays = Math.round(diffMs / 86400000); // days
                if (diffDays &lt; 30) diff = diffDays + ' days ago';
                else diff = j.date;
            }
            //console.log(j.date, j.title, j.url, j.importance);
            j.diff = diff;
            if (streamStart == 0) {
                //if (j.url) j.image = 'https://d3fy651gv2fhd3.cloudfront.net/charts/stream.png?h=200&amp;w=300&amp;lbl=0&amp;url=' + j.url;
                var itemLatest = getItem(j, true);
            } else {
                j.append = true;
                item = getItem(j, false)
                if (item) items.push(item);
            }
            streamStart += 1;
        });
        $("&lt;ul/&gt;", { "class": "list-group", html: items.join("") }).appendTo("#stream");
        streamHeight = $("#stream").height();
    }

    if (!IsTicker) {
        $(window).scroll(function () {
        
            if (streamHeight &lt; 100000) {
                if ($(window).scrollTop() &gt;= streamHeight * 0.80) {

                    if (!streamIsLoading) {
                        getresult(streamStart, streamSize);
                    }
                    else {
                        console.log("Stream Loading is Busy. Hold on ...")
                    }
                }
            }
        });
        getresult(streamStart, streamSize);
    }
    $('#stream-btn').click(function () {
        console.log("Load more Streams After Click");
        getresult(streamStart, streamSize);
    });
&lt;/script&gt;
&lt;script&gt;
    var _hmt = _hmt || [];
    (function () {
        var hm = document.createElement("script");
        hm.src = "//hm.baidu.com/hm.js?939595e238118b7abff79ffe88dff6e7";
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(hm, s);
    })();
&lt;/script&gt;
&lt;script&gt;
&lt;/script&gt;
&lt;script type="text/javascript"&gt;
    console.log("AdSense Script");
    function addScript(src, async, callback) {
        var js = document.createElement("script");
        js.type = "text/javascript";
        if (async) js.async = true;
        if (callback) js.onload = callback;
        js.src = src;
        document.body.appendChild(js);
    }
    $(function(){
        if (window.location.pathname.indexOf("/calendar") &gt; -1) {
            console.log("AdSense Not Loaded");
            return;
        }

        // Disabled on 2023-10-21
        if ( 1 &gt; 2 &amp;&amp; window.location.pathname.indexOf(":") &gt; -1 &amp;&amp; window.location.href.indexOf("ads=1") &lt;= -1) {
            console.log("AdSense Market Page");
            $.ajax({
                url: 'https://d3vb52adw0w4hj.cloudfront.net/crossdomain.xml',
                //url: '/ads.txt',
                type: 'GET',
                success: function (data) {
                    console.log("AdSense CloudFront Validated");
                    setTimeout(function () {
                        console.log("AdSense Timeout");
                        (adsbygoogle = window.adsbygoogle || []);
                        $("ins.adsbygoogle").each(function () {
                            console.log('AdSense Found Ad');
                            var s = document.createElement("script");
                            s.type = "text/javascript";
                            s.text = "(adsbygoogle = window.adsbygoogle || []).push({})";
                            $(s).insertAfter($(this));
                        });
                        addScript("https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js", true);
                    }, 100);
                },
                error: function (data) {
                    console.log("AdSense CloudFront 403");
                    $("ins.adsbygoogle").each(function () {
                        var s = document.createElement("span");
                        s.text = "xxxxxxxxx";
                        $(s).insertAfter($(this));
                    });
                }
            });
        } else {
            console.log("AdSense Document Ready");
            setTimeout(function () {
                console.log("AdSense Timeout");
                (adsbygoogle = window.adsbygoogle || []);
                $("ins.adsbygoogle").each(function () {
                    console.log('AdSense Found Ad');
                    var s = document.createElement("script");
                    s.type = "text/javascript";
                    s.text = "(adsbygoogle = window.adsbygoogle || []).push({})";
                    $(s).insertAfter($(this));
                });
                addScript("https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js", true);
            }, 10);

        }

    });
&lt;/script&gt;
&lt;script async="" src="https://www.googletagmanager.com/gtag/js?id=G-SZ14JCTXWQ"&gt;&lt;/script&gt;
&lt;script&gt;
    window.dataLayer = window.dataLayer || [];
    function ga() { dataLayer.push(arguments); }
    ga('js', new Date());
    ga('config', 'G-SZ14JCTXWQ', { 'allow_google_signals': false });
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=d7bf1c55-7a12-4c90-96e7-c44cdda4008d">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">tds</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'td'</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">tds</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">a</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s1">'a'</span><span class="p">)</span>
        <span class="nb">print</span><span class="p">(</span><span class="n">a</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>
                                    Passanger Car Exports
                                

                                    贸易差额
                                

                                    电动汽车出口
                                

                                    出口
                                

                                    出口（年）
                                

                                    进口
                                

                                    进口（年）
                                

                                    贸易条款
                                
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=41808fc9-8421-4492-9cd2-92109d65a7a2">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">names</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">tds</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">a</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s1">'a'</span><span class="p">)</span>
        <span class="n">names</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">a</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
<span class="nb">print</span><span class="p">(</span><span class="n">names</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>['\r\n                                    Passanger Car Exports\r\n                                ', '\r\n                                    贸易差额\r\n                                ', '\r\n                                    电动汽车出口\r\n                                ', '\r\n                                    出口\r\n                                ', '\r\n                                    出口（年）\r\n                                ', '\r\n                                    进口\r\n                                ', '\r\n                                    进口（年）\r\n                                ', '\r\n                                    贸易条款\r\n                                ']
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=5785ee97-2411-4f6c-9ee5-e3bdffefd99b">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">names__</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">names</span><span class="p">:</span>
    <span class="n">text__</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">text_</span><span class="o">=</span><span class="n">text__</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\r</span><span class="s1">'</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">text</span><span class="o">=</span><span class="n">text_</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">names__</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">text</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">names__</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>['PassangerCarExports', '贸易差额', '电动汽车出口', '出口', '出口（年）', '进口', '进口（年）', '贸易条款']
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=662ce64e-af09-498b-949d-2615015be7f8">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [10]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">trs</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'tr'</span><span class="p">)</span>
<span class="n">numbers</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">trs</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">td</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'td'</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
        <span class="nb">print</span><span class="p">(</span><span class="n">td</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
        
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>388179.00
39.71
112502.00
220.28
5.60
180.57
-8.20
89.89
220.28
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=57c9ad98-f147-4733-a73f-b10254db4479">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [11]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">trs</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'tr'</span><span class="p">)</span>
<span class="n">numbers</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">trs</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">td</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'td'</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
        <span class="n">numbers</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">td</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=c503d46f-371a-4967-a901-258e990f3b10">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [13]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<span class="kn">from</span> <span class="nn">bs4</span> <span class="kn">import</span> <span class="n">BeautifulSoup</span>
<span class="kn">import</span> <span class="nn">requests</span>

<span class="n">url</span><span class="o">=</span><span class="s1">'https://www.qimao.com/shuku/1738767/'</span>
<span class="n">headers</span><span class="o">=</span><span class="p">{</span><span class="s1">'User-agent'</span><span class="p">:</span><span class="s1">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0'</span><span class="p">}</span>
<span class="n">res</span><span class="o">=</span><span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">url</span><span class="o">=</span><span class="n">url</span><span class="p">,</span><span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>

<span class="n">res</span><span class="o">.</span><span class="n">encoding</span> <span class="o">=</span> <span class="s1">'utf-8'</span>
<span class="n">soup</span><span class="o">=</span><span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">res</span><span class="o">.</span><span class="n">text</span><span class="p">,</span><span class="s2">"html.parser"</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">soup</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>&lt;!DOCTYPE html&gt;

&lt;html data-n-head-ssr=""&gt;
&lt;head&gt;
&lt;title&gt;禁止离婚！陆少夜夜跪地轻哄免费阅读-陆泽,乔熏-免费小说全文-作者-风羽轻轻作品-七猫中文网&lt;/title&gt;&lt;meta content="IE=edge" data-n-head="ssr" http-equiv="X-UA-Compatible"/&gt;&lt;meta content="webkit" data-n-head="ssr" name="renderer"/&gt;&lt;meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,viewport-fit=cover" data-n-head="ssr" name="viewport"/&gt;&lt;meta content="telephone=no,email=no" data-n-head="ssr" name="format-detection"/&gt;&lt;meta content="no" data-n-head="ssr" name="wap-font-scale"/&gt;&lt;meta content="《禁止离婚！陆少夜夜跪地轻哄》主角：陆泽,乔熏简介：结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。
乔熏全部忍耐，因为她深爱陆泽！
直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……
她终于释然：有些人的心永远捂不热。
乔熏写下一纸离婚协议，悄然离开。
……
两年后乔熏归来，身边追求者无数。
她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”
乔熏笑颜淡淡：“陆先生，我们之间再无关系！”
男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”" data-hid="description" data-n-head="ssr" name="description"/&gt;&lt;meta content="《禁止离婚！陆少夜夜跪地轻哄》，《禁止离婚！陆少夜夜跪地轻哄》最新章节，《禁止离婚！陆少夜夜跪地轻哄》全文阅读，《禁止离婚！陆少夜夜跪地轻哄》下载app免费阅读，风羽轻轻小说《禁止离婚！陆少夜夜跪地轻哄》，《禁止离婚！陆少夜夜跪地轻哄》全本免费下载" data-hid="keywords" data-n-head="ssr" name="keywords"/&gt;&lt;link data-hid="icon" data-n-head="ssr" href="https://cdn-front.qimao.com/global/static/images/favicon2022.ico" rel="icon" type="image/x-icon"/&gt;&lt;script data-n-head="ssr" src="https://cdn-front.qimao.com/global/static/plugins/css-vars-ponyfill/2.4.7/index.js"&gt;&lt;/script&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/ac83bad.js" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/55b9a0d.js" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/214c30e.js" rel="preload"/&gt;&lt;link as="style" href="https://cdn-front.qimao.com/qimao/css/7ba94eb.css" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/2a34c77.js" rel="preload"/&gt;&lt;link as="style" href="https://cdn-front.qimao.com/qimao/css/c48d31f.css" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/480b60a.js" rel="preload"/&gt;&lt;link as="style" href="https://cdn-front.qimao.com/qimao/css/0dc3f85.css" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/2032d81.js" rel="preload"/&gt;&lt;link as="style" href="https://cdn-front.qimao.com/qimao/css/f99a96c.css" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/a905119.js" rel="preload"/&gt;&lt;link as="style" href="https://cdn-front.qimao.com/qimao/css/5ac2245.css" rel="preload"/&gt;&lt;link as="script" href="https://cdn-front.qimao.com/qimao/js/cda3030.js" rel="preload"/&gt;&lt;link href="https://cdn-front.qimao.com/qimao/css/7ba94eb.css" rel="stylesheet"/&gt;&lt;link href="https://cdn-front.qimao.com/qimao/css/c48d31f.css" rel="stylesheet"/&gt;&lt;link href="https://cdn-front.qimao.com/qimao/css/0dc3f85.css" rel="stylesheet"/&gt;&lt;link href="https://cdn-front.qimao.com/qimao/css/f99a96c.css" rel="stylesheet"/&gt;&lt;link href="https://cdn-front.qimao.com/qimao/css/5ac2245.css" rel="stylesheet"/&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div data-server-rendered="true" id="__nuxt"&gt;&lt;div id="__layout"&gt;&lt;div class="qimao" data-v-f85172b0=""&gt;&lt;div class="qm-sheader" data-v-14e22746="" data-v-f85172b0=""&gt;&lt;div class="qm-main" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="qm-sheader-row" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="left-col" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;a class="logo mr40" data-v-14e22746="" data-v-24e09dca="" href="/"&gt;&lt;img alt="七猫中文网" class="logo-img" data-v-14e22746="" data-v-24e09dca="" height="36" src="https://cdn-front.qimao.com/qimao/img/header/logo.d026f02.png" width="156"/&gt;&lt;/a&gt; &lt;ul class="qm-header-nav mr small" data-v-14e22746="" data-v-2b590c6c=""&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/" target=""&gt;
            首页
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/shuku/a-a-a-a-a-a-a-click-1/" target=""&gt;
            分类
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/paihang" target=""&gt;
            排行榜
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/activity/current/" target="_blank"&gt;
            征文活动
        &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul class="qm-header-nav small" data-v-14e22746="" data-v-2b590c6c=""&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="https://zuozhe.qimao.com" target="_blank"&gt;
            作家专区
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/2024fuli.html" target="_blank"&gt;
            签约政策
        &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt; &lt;div class="right-col" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="search-wrap" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="qm-search qm-search-type-2" data-v-14e22746="" data-v-f1f768ac="" value=""&gt;&lt;span class="s-input" data-v-f1f768ac=""&gt;&lt;input data-v-f1f768ac="" placeholder="请输入书名/作者/主角" type="text" value=""/&gt; &lt;!-- --&gt; &lt;a class="a-search-btn" data-v-f1f768ac="" href="javascript:void(0);"&gt;搜索&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-user-avator" data-v-116f2666="" data-v-14e22746=""&gt;&lt;div class="login-btn" data-v-116f2666=""&gt;&lt;a data-v-116f2666="" href="/login?redirect=/shuku/1738767/"&gt;&lt;i class="iconfont" data-v-116f2666=""&gt;&lt;/i&gt; &lt;span class="login-txt" data-v-116f2666=""&gt;立即登录&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-sheader fixed" data-v-14e22746="" data-v-f85172b0=""&gt;&lt;div class="qm-main" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="qm-sheader-row" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="left-col" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;a class="logo mr40" data-v-14e22746="" data-v-24e09dca="" href="/"&gt;&lt;img alt="七猫中文网" class="logo-img" data-v-14e22746="" data-v-24e09dca="" height="36" src="https://cdn-front.qimao.com/qimao/img/header/logo.d026f02.png" width="156"/&gt;&lt;/a&gt; &lt;ul class="qm-header-nav mr small" data-v-14e22746="" data-v-2b590c6c=""&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/" target=""&gt;
            首页
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/shuku/a-a-a-a-a-a-a-click-1/" target=""&gt;
            分类
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/paihang" target=""&gt;
            排行榜
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/activity/current/" target="_blank"&gt;
            征文活动
        &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul class="qm-header-nav small" data-v-14e22746="" data-v-2b590c6c=""&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="https://zuozhe.qimao.com" target="_blank"&gt;
            作家专区
        &lt;/a&gt;&lt;/li&gt;&lt;li class="qm-header-nav-item" data-v-2b590c6c=""&gt;&lt;a data-v-2b590c6c="" href="/2024fuli.html" target="_blank"&gt;
            签约政策
        &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt; &lt;div class="right-col" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="search-wrap" data-v-14e22746="" data-v-24e09dca=""&gt;&lt;div class="qm-search qm-search-type-2" data-v-14e22746="" data-v-f1f768ac="" value=""&gt;&lt;span class="s-input" data-v-f1f768ac=""&gt;&lt;input data-v-f1f768ac="" placeholder="请输入书名/作者/主角" type="text" value=""/&gt; &lt;!-- --&gt; &lt;a class="a-search-btn" data-v-f1f768ac="" href="javascript:void(0);"&gt;搜索&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-user-avator" data-v-116f2666="" data-v-14e22746=""&gt;&lt;div class="login-btn" data-v-116f2666=""&gt;&lt;a data-v-116f2666="" href="/login?redirect=/shuku/1738767/"&gt;&lt;i class="iconfont" data-v-116f2666=""&gt;&lt;/i&gt; &lt;span class="login-txt" data-v-116f2666=""&gt;立即登录&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="wrapper" data-v-f85172b0=""&gt;&lt;div class="shuku-page" data-v-f85172b0=""&gt;&lt;div&gt;&lt;div class="book-detail" data-fetch-key="data-v-678a6052:0" data-v-678a6052=""&gt;&lt;div class="book-detail-header" data-v-678a6052=""&gt;&lt;ul class="qm-bread-crumbs" data-v-642bcfde="" data-v-678a6052=""&gt;&lt;li class="qm-bread-crumbs-item" data-v-642bcfde=""&gt;&lt;a class="crumb-item" data-v-642bcfde="" href="https://www.qimao.com"&gt;
                首页
            &lt;/a&gt; &lt;i class="iconfont crumb-icon" data-v-642bcfde=""&gt;&lt;/i&gt;&lt;/li&gt;&lt;li class="qm-bread-crumbs-item" data-v-642bcfde=""&gt;&lt;a class="crumb-item" data-v-642bcfde="" href="https://www.qimao.com/shuku/a-1-8-a-a-a-a-click-1/"&gt;
                总裁豪门
            &lt;/a&gt; &lt;i class="iconfont crumb-icon" data-v-642bcfde=""&gt;&lt;/i&gt;&lt;/li&gt;&lt;li class="qm-bread-crumbs-item" data-v-642bcfde=""&gt;&lt;span class="crumb-item disabled" data-v-642bcfde=""&gt;禁止离婚！陆少夜夜跪地轻哄&lt;/span&gt; &lt;!-- --&gt;&lt;/li&gt;&lt;/ul&gt; &lt;div class="book-detail-info clearfix" data-v-678a6052=""&gt;&lt;div class="book-information clearfix left" data-v-571c9e1d="" data-v-678a6052=""&gt;&lt;div class="wrap-pic" data-v-571c9e1d=""&gt;&lt;img data-v-571c9e1d="" height="260px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/281ab03649966264cb17d4365563e1d9_360x480.jpg" width="195px"/&gt; &lt;i class="i-mask" data-v-571c9e1d=""&gt;&lt;/i&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="wrap-txt" data-v-571c9e1d=""&gt;&lt;div class="title clearfix" data-v-571c9e1d=""&gt;&lt;span class="txt" data-v-571c9e1d=""&gt;禁止离婚！陆少夜夜跪地轻哄&lt;/span&gt; &lt;span class="score" data-v-571c9e1d=""&gt;8.9&lt;em data-v-571c9e1d=""&gt;分&lt;/em&gt;&lt;/span&gt;&lt;/div&gt; &lt;div class="tags-wrap" data-v-571c9e1d=""&gt;&lt;em class="qm-tag tag orange middle" data-v-571c9e1d="" data-v-7edf0d87=""&gt;连载中&lt;/em&gt; &lt;em class="qm-tag tag border middle" data-v-571c9e1d="" data-v-7edf0d87=""&gt;&lt;em data-v-571c9e1d="" data-v-7edf0d87=""&gt;签约作品&lt;/em&gt;&lt;/em&gt; &lt;em class="qm-tag tag border middle" data-v-571c9e1d="" data-v-7edf0d87=""&gt;&lt;a data-v-571c9e1d="" data-v-7edf0d87="" href="https://www.qimao.com/shuku/a-1-a-a-a-a-a-click-1/" target="_blank"&gt;现代言情&lt;/a&gt;&lt;/em&gt; &lt;em class="qm-tag tag border middle" data-v-571c9e1d="" data-v-7edf0d87=""&gt;&lt;a data-v-571c9e1d="" data-v-7edf0d87="" href="https://www.qimao.com/shuku/a-1-8-a-a-a-a-click-1/" target="_blank"&gt;总裁豪门&lt;/a&gt;&lt;/em&gt;&lt;/div&gt; &lt;div class="sub-title" data-v-571c9e1d=""&gt;&lt;span class="txt" data-v-571c9e1d=""&gt;作者：
                &lt;em data-v-571c9e1d=""&gt;&lt;a data-v-571c9e1d="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;
                        风羽轻轻
                    &lt;/a&gt;&lt;/em&gt;&lt;/span&gt; &lt;span class="txt" data-v-571c9e1d=""&gt;
                主角：
                &lt;em data-v-571c9e1d=""&gt;
                   陆泽
                &lt;/em&gt;&lt;em data-v-571c9e1d=""&gt;
                   乔熏
                &lt;/em&gt;&lt;/span&gt;&lt;/div&gt; &lt;div class="statistics-wrap" data-v-571c9e1d=""&gt;&lt;span class="txt" data-v-571c9e1d=""&gt;&lt;em data-v-571c9e1d=""&gt;84.86&lt;/em&gt;万字&lt;/span&gt; &lt;span class="txt" data-v-571c9e1d=""&gt;&lt;em data-v-571c9e1d=""&gt;215.4&lt;/em&gt;万次阅读&lt;/span&gt; &lt;span class="txt" data-v-571c9e1d=""&gt;&lt;em data-v-571c9e1d=""&gt;621.5&lt;/em&gt;万累计人气值&lt;/span&gt;&lt;/div&gt; &lt;div class="update-info" data-v-571c9e1d=""&gt;&lt;span data-v-571c9e1d=""&gt;更新至&lt;/span&gt; &lt;span class="update-chapter-title" data-v-571c9e1d=""&gt;&lt;a data-v-571c9e1d="" href="https://www.qimao.com/shuku/1738767-17126706010317/" target="_blank"&gt;第317章  真实身份：孟烟跟沈家的关系2&lt;/a&gt;&lt;/span&gt; &lt;span class="update-time" data-v-571c9e1d=""&gt;2024-04-09 21:50:04&lt;/span&gt;&lt;/div&gt; &lt;div class="btns-wrap clearfix" data-v-571c9e1d=""&gt;&lt;a class="qm-btn item inline-block important large radius" data-v-41e2fa47="" data-v-571c9e1d="" href="javascript:void(0);" target=""&gt;
                开始阅读
            &lt;/a&gt; &lt;a class="qm-btn item inline-block default large radius" data-v-41e2fa47="" data-v-571c9e1d="" href="javascript:void(0);" target=""&gt;
                    加入书架
                &lt;/a&gt; &lt;div class="qm-popper item" data-v-111a6685="" data-v-571c9e1d=""&gt;&lt;div class="qm-popper-title" data-v-111a6685=""&gt;&lt;span class="other-btn" data-v-111a6685="" data-v-571c9e1d=""&gt;&lt;i class="iconfont icon" data-v-111a6685="" data-v-571c9e1d=""&gt;&lt;/i&gt; &lt;span data-v-111a6685="" data-v-571c9e1d=""&gt;手机免费阅读&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-popper-content bottom" data-v-111a6685=""&gt; &lt;div class="qm-app-download-code clearfix" data-v-571c9e1d="" data-v-f6536320=""&gt; &lt;div class="pop right" data-v-f6536320=""&gt;&lt;img alt="七猫免费小说app" data-v-f6536320="" height="214" src="https://cdn-front.qimao.com/qimao/img/common/app_code_pic.437985b.png" width="160"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;span class="item other-btn gray" data-v-571c9e1d=""&gt;&lt;i class="iconfont icon report" data-v-571c9e1d=""&gt;&lt;/i&gt; &lt;span data-v-571c9e1d=""&gt;举报&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-pop" data-v-44d0399c="" data-v-571c9e1d="" style="display:none;"&gt;&lt;div class="qm-pop-mask" data-v-44d0399c=""&gt;&lt;/div&gt; &lt;div class="qm-pop-mod w-550" data-v-44d0399c=""&gt;&lt;i class="iconfont qm-pop-close-btn" data-v-44d0399c=""&gt;&lt;/i&gt; &lt;div class="qm-pop-mod-th" data-v-44d0399c=""&gt;&lt;span class="s-tit" data-v-44d0399c=""&gt;举报&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-pop-mod-tb" data-v-44d0399c=""&gt;&lt;div&gt;&lt;ul class="qm-form" labelwidth="90px"&gt;&lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        举报类型
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-select middle" data-v-1fc8509c=""&gt;&lt;span class="qm-select-label" data-v-1fc8509c=""&gt;&lt;em class="placeholder" data-v-1fc8509c=""&gt;请选择&lt;/em&gt;&lt;/span&gt; &lt;ul class="qm-select-list" data-v-1fc8509c="" style="display:none;"&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        章节链接
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;textarea data-v-80115cbc="" resize="none"&gt;&lt;/textarea&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        举报内容
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;textarea data-v-80115cbc="" resize="none"&gt;&lt;/textarea&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;!-- --&gt;
        联系方式
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;input data-v-80115cbc="" maxlength="" minlength="minlength" type="text" value=""/&gt; &lt;!-- --&gt; &lt;span class="qm-input-placeholder" data-v-80115cbc=""&gt;请输入&lt;/span&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;!-- --&gt;
        举报电话
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;span class="s-tit" data-v-392ccf9f=""&gt;400-855-9290（周一到周五 9:00-18:00）&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-pop-mod-tf" data-v-44d0399c=""&gt;&lt;a class="qm-btn inline-block important large radius" data-v-41e2fa47="" data-v-44d0399c="" href="javascript:void(0);" target=""&gt;提交&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="author-information right" data-v-678a6052="" data-v-fced359e=""&gt;&lt;div class="author clearfix" data-v-fced359e=""&gt;&lt;div class="wrap-pic" data-v-fced359e=""&gt;&lt;a data-v-fced359e="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;&lt;img data-v-fced359e="" height="60px" src="https://cdn.qimao.com/bookimg/zww/upload/avatar/0/1695152756510805.jpg" width="60px"/&gt;&lt;/a&gt;&lt;/div&gt; &lt;div class="wrap-info" data-v-fced359e=""&gt;&lt;div class="author-name" data-v-fced359e=""&gt;&lt;a data-v-fced359e="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;
                    风羽轻轻
                &lt;/a&gt;&lt;/div&gt; &lt;a class="author-information-tag" data-v-fced359e="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;&lt;div class="author-tag level small" data-v-214d6543="" data-v-fced359e=""&gt;&lt;div class="author-tag-pic" data-v-214d6543=""&gt;&lt;img data-v-214d6543="" height="24px" src="https://cdn-front.qimao.com/qimao/img/author/level-tag/level5.2fd70ee.png" width="auto"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt; &lt;ul class="author-works-data-list clearfix works-data-list default" data-v-882456c6="" data-v-fced359e=""&gt;&lt;li class="author-works-data-list-item" data-v-882456c6=""&gt;&lt;div class="num" data-v-882456c6=""&gt;&lt;em data-v-882456c6=""&gt;3&lt;/em&gt;本&lt;/div&gt; &lt;div class="desc" data-v-882456c6=""&gt;作品总数&lt;/div&gt;&lt;/li&gt; &lt;li class="author-works-data-list-item" data-v-882456c6=""&gt;&lt;div class="num" data-v-882456c6=""&gt;&lt;em data-v-882456c6=""&gt;340.38&lt;/em&gt;万&lt;/div&gt; &lt;div class="desc" data-v-882456c6=""&gt;累计字数&lt;/div&gt;&lt;/li&gt; &lt;li class="author-works-data-list-item" data-v-882456c6=""&gt;&lt;div class="num" data-v-882456c6=""&gt;&lt;em data-v-882456c6=""&gt;779&lt;/em&gt;天&lt;/div&gt; &lt;div class="desc" data-v-882456c6=""&gt;创作天数&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="book-detail-body" data-v-678a6052=""&gt;&lt;div class="book-detail-content" data-v-678a6052=""&gt;&lt;div class="qm-tab type-2 normal" data-v-294d33d2="" data-v-678a6052=""&gt;&lt;ul class="qm-tab-list clearfix" data-v-294d33d2=""&gt;&lt;li class="qm-tab-list-item" data-v-294d33d2=""&gt;&lt;div class="tab-inner active" data-v-294d33d2=""&gt;&lt;span data-v-294d33d2=""&gt;作品介绍&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt;&lt;li class="qm-tab-list-item" data-v-294d33d2=""&gt;&lt;div class="tab-inner" data-v-294d33d2=""&gt;&lt;span data-v-294d33d2=""&gt;作品目录&lt;/span&gt; &lt;span class="sub-txt" data-v-294d33d2=""&gt;317章&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt; &lt;div class="tab-content clearfix" data-v-678a6052=""&gt;&lt;div class="l-col" data-v-678a6052=""&gt;&lt;div class="book-introduction" data-v-1846831c="" data-v-678a6052=""&gt;&lt;div class="qm-with-title clearfix book-introduction-item vertical default" data-v-093c045c="" data-v-1846831c=""&gt;&lt;div class="qm-with-title-th" data-v-093c045c=""&gt;&lt;span data-v-093c045c=""&gt;简介&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-with-title-tb" data-v-093c045c=""&gt;&lt;p class="intro" data-v-093c045c="" data-v-1846831c=""&gt;结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。
乔熏全部忍耐，因为她深爱陆泽！
直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……
她终于释然：有些人的心永远捂不热。
乔熏写下一纸离婚协议，悄然离开。
……
两年后乔熏归来，身边追求者无数。
她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”
乔熏笑颜淡淡：“陆先生，我们之间再无关系！”
男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”&lt;/p&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-with-title clearfix book-introduction-item horizontal default" data-v-093c045c="" data-v-1846831c=""&gt;&lt;div class="qm-with-title-th" data-v-093c045c=""&gt;&lt;span data-v-093c045c=""&gt;作品荣誉&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-with-title-tb" data-v-093c045c=""&gt;&lt;div class="honor-list-wrap" data-v-093c045c="" data-v-1846831c=""&gt;&lt;div class="badge-honor-list-wrap type-img" data-v-1846831c="" data-v-8fa016c0=""&gt;&lt;ul class="badge-honor-list clearfix small" data-v-8fa016c0=""&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;span class="badge-count" data-v-8fa016c0="" style="background:#fff;"&gt;&lt;em class="txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt;4&lt;/em&gt;&lt;/span&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;li class="badge-honor-list-item" data-v-8fa016c0=""&gt;&lt;div class="badge-honor-list-item-pic" data-v-8fa016c0=""&gt;&lt;img alt="" data-v-8fa016c0="" height="100%" src="https://cdn-front.qimao.com/qimao/img/author/default_medal.b367ad1.png" width="100%"/&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="badge-honor-list-item-txt" data-v-8fa016c0=""&gt;&lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="badge-honor-list-colspace" data-v-8fa016c0=""&gt;&lt;/li&gt;&lt;/ul&gt; &lt;div class="badge-honor-list-rowspace" data-v-8fa016c0=""&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="more-badge-btn" data-v-093c045c="" data-v-1846831c=""&gt;&lt;a data-v-093c045c="" data-v-1846831c="" href="/zuozhe/honor-badge/风羽轻轻_14/normal/1392535/" target="_blank"&gt;查看更多徽章&lt;i class="iconfont" data-v-093c045c="" data-v-1846831c=""&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-with-title clearfix book-introduction-item vertical default" data-v-093c045c="" data-v-1846831c=""&gt;&lt;div class="qm-with-title-th" data-v-093c045c=""&gt;&lt;span data-v-093c045c=""&gt;第1章  没有爱的婚姻，犹如笼牢&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-with-title-tb" data-v-093c045c=""&gt;&lt;div class="article mask" data-v-093c045c="" data-v-1846831c=""&gt;&lt;p&gt;乔熏不知道，是不是出轨的男人，都有两部手机。&lt;/p&gt;&lt;p&gt;陆泽洗澡的时候，他的情人发来一张自拍。&lt;/p&gt;&lt;p&gt;那是个很年轻的女孩儿，长相清秀，却穿着与年龄不符的贵气衣裳，所以显得有些局促。&lt;/p&gt;&lt;p&gt;【陆先生，谢谢您的生日礼物。】&lt;/p&gt;&lt;p&gt;乔熏看了很久，直到眼睛泛酸。她一直知道陆泽身边有个人，只是没想到会是这样的女孩子，心痛之外她也惊讶丈夫的喜好。&lt;/p&gt;&lt;p&gt;她想，真是抱歉，看见了陆泽的秘密。&lt;/p&gt;&lt;p&gt;背后传来浴室门拉开的声音。&lt;/p&gt;&lt;p&gt;片刻，陆泽带着一身水气出来，雪白浴衣包裹着壁垒分明的腹肌和结实的胸膛，英挺性感。&lt;/p&gt;&lt;p&gt;“还要看多久？”&lt;/p&gt;&lt;p&gt;他抽掉乔熏手里手机，睨她一眼，便开始穿衣服。&lt;/p&gt;&lt;p&gt;他的神情间，没有一丝被妻子戳穿的窘迫。乔熏清楚，他的底气来源于经济，因为乔熏是被他养在家里的，即使婚前她也曾是国内知名小提琴手。&lt;/p&gt;&lt;p&gt;乔熏没跟他计较那张照片，她也计较不起。&lt;/p&gt;&lt;p&gt;看出他要出门，她连忙开口：“陆泽，我有话想跟你说。”&lt;/p&gt;&lt;p&gt;男人慢条斯理地扣好皮带，看向妻子，大概是想起方才她在床上逆来顺受的柔弱姿态，不禁哼笑：“又想要了？”&lt;/p&gt;&lt;p&gt;但这亲昵，也不过是狎玩。&lt;/p&gt;&lt;p&gt;他从未将这个妻子放在心上，只是因为一场意外，不得不娶罢了。&lt;/p&gt;&lt;p&gt;陆泽收回目光，拿起床头柜上一块百达翡丽男表戴到手腕上，语气浅淡：“我还有五分钟时间，司机在楼下等着了。”&lt;/p&gt;&lt;p&gt;乔熏猜到他去哪，眼神一暗：“陆泽，我想出去工作。”&lt;/p&gt;&lt;p&gt;出去工作？&lt;/p&gt;&lt;p&gt;陆泽扣好表带侧身看她，看了半晌，从衣袋里掏出支票薄写下一组数字，撕下来递给她：“在家里当全职太太不好吗？工作不适合你。”&lt;/p&gt;&lt;p&gt;说完，他就要走。&lt;/p&gt;&lt;p&gt;乔熏追过去，姿态放得很低：“我不怕辛苦！我想出去工作……我会拉小提琴……”&lt;/p&gt;&lt;p&gt;男人没有耐心听下去。&lt;/p&gt;&lt;p&gt;在他心里，乔熏就像是一株依附人的柔弱菟丝花，让人养习惯了，根本不适合抛头露面更吃不了苦。&lt;/p&gt;&lt;p&gt;陆泽抬手看了下表：“时间到了！”&lt;/p&gt;&lt;p&gt;他不带留恋地离开，乔熏留不住他，只在他握住门把时抓紧着问：“周六我爸爸过寿，你有时间吗？”&lt;/p&gt;&lt;p&gt;陆泽脚步一顿：“再看吧！”&lt;/p&gt;&lt;p&gt;门轻轻合上，一会儿楼下传来汽车发动的声音，渐行渐远。&lt;/p&gt;&lt;p&gt;几分钟后，佣人上楼。&lt;/p&gt;&lt;p&gt;她们知道先生太太感情一般，于是当了这个传声筒：“先生要去H市几天，说是有重要的事情。另外，刚刚公司送来一批先生的换洗衣物，太太，是送洗还是您亲自手洗熨烫？”&lt;/p&gt;&lt;p&gt;乔熏跪坐在沙发上。&lt;/p&gt;&lt;p&gt;半晌她才回神，轻声说：“手洗吧！”&lt;/p&gt;&lt;p&gt;因为陆泽不喜欢干洗的溶剂味道，所以陆泽的所有衣服，包括西装大衣，几乎都是乔熏手洗然后熨烫。&lt;/p&gt;&lt;p&gt;除了这个，其他方面，陆泽要求也高。&lt;/p&gt;&lt;p&gt;他不爱吃外面的菜，他不喜欢卧室有一丝杂乱。乔熏便学了烹饪、整理、插花……她逐渐成为完美的全职太太。&lt;/p&gt;&lt;p&gt;她的人生，也几乎只剩下陆泽。&lt;/p&gt;&lt;p&gt;但陆泽依然不爱她。&lt;/p&gt;&lt;p&gt;乔熏低头，注视着那张支票。&lt;/p&gt;&lt;p&gt;去年她娘家倒了，哥哥被指控人在看守所，她的爸爸突发疾病每月所花都不止十万，每次回家沈姨都抱怨她从陆泽这里拿得太少。&lt;/p&gt;&lt;p&gt;“他是陆氏医药集团总裁，身家千亿……乔熏你跟他是夫妻，他的难道不就是你的吗？”&lt;/p&gt;&lt;p&gt;乔熏苦笑。&lt;/p&gt;&lt;p&gt;陆泽的怎么会是她的？&lt;/p&gt;&lt;p&gt;陆泽不爱她，平时对她很冷淡，他们的婚姻只有性没有爱，他甚至不允许她生下他的孩子，每次同房他都会提醒她吃药。&lt;/p&gt;&lt;p&gt;对，她得吃药。&lt;/p&gt;&lt;p&gt;乔熏摸到药瓶，倒出一颗木然吞下。&lt;/p&gt;&lt;p&gt;吞完药片，她轻轻拉开一个小抽屉，里面是本厚厚的日记本，翻开全是18岁的乔熏对陆泽满满的爱恋——&lt;/p&gt;&lt;p&gt;六年，她爱了他整整六年！&lt;/p&gt;&lt;p&gt;乔熏蓦地闭上眼睛。&lt;/p&gt;&lt;p&gt;……&lt;/p&gt;&lt;p&gt;乔熏没等到陆泽回来，周五晚上，乔家出了大事。&lt;/p&gt;&lt;p&gt;有消息递出来，乔家长子——乔时宴，因为乔氏集团的经济案，可能要判十年。&lt;/p&gt;&lt;p&gt;十年，足以摧毁一个人。&lt;/p&gt;&lt;p&gt;当晚，乔父急性脑出血入院，情况很危急需要立刻手术。&lt;/p&gt;&lt;p&gt;乔熏站在医院过道，不停给陆泽打电话，但是打了好几次也没有人接。就在她放弃时，陆泽给她发了微信。&lt;/p&gt;&lt;p&gt;一如既往，惜字如金。&lt;/p&gt;&lt;p&gt;【我还在H市，有事的话找秦秘书。】&lt;/p&gt;&lt;p&gt;乔熏再打过去，这一次陆泽接听了，她连忙说：“陆泽，我爸爸……”&lt;/p&gt;&lt;p&gt;陆泽打断她。&lt;/p&gt;&lt;p&gt;他的语气带着一丝不耐：“是需要用钱吗？我说过很多次了，急用钱的话就找秦秘书……乔熏，你在听吗？”&lt;/p&gt;&lt;p&gt;……&lt;/p&gt;&lt;p&gt;乔熏仰头望着电子屏幕，表情怔怔的，那上面正在放新闻。&lt;/p&gt;&lt;p&gt;【陆氏医药集团总裁，为博红颜一笑，包下整个迪斯尼放烟花。】&lt;/p&gt;&lt;p&gt;满天璀璨烟花下，&lt;/p&gt;&lt;p&gt;年轻的女孩儿坐在轮椅上，笑得清纯可爱，而她的丈夫陆泽，站在轮椅后面……他手里握着手机正与她通话。&lt;/p&gt;&lt;p&gt;乔熏轻轻眨眼。&lt;/p&gt;&lt;p&gt;良久，她声音带了一丝破碎：“陆泽你在哪儿？”&lt;/p&gt;&lt;p&gt;对面顿了顿，似乎很不高兴她的查岗，但还是敷衍了句：“还在忙，没事的话我挂了，你跟秦秘书联系。”&lt;/p&gt;&lt;p&gt;他没有察觉她快哭的语调，但他低头望向旁人的目光……很温柔很温柔。&lt;/p&gt;&lt;p&gt;乔熏眼前一片模糊——&lt;/p&gt;&lt;p&gt;原来，陆泽也有这么温柔的样子。&lt;/p&gt;&lt;p&gt;背后，传来继母沈清的声音：“跟陆泽联系上没有？乔熏，这个事情你一定要找陆泽帮……”&lt;/p&gt;&lt;p&gt;沈清的话顿住，因为她也看见了电子屏幕上的一幕。&lt;/p&gt;&lt;p&gt;半晌，沈清才找回自己的声音：“他又去H市了？乔熏我就不信，当年陆泽昏迷，这个叫白筱筱的女的拉个小提琴就把人唤醒了？即使真是这样，有这样报答的吗？”&lt;/p&gt;&lt;p&gt;“你的生日他都记不住！”&lt;/p&gt;&lt;p&gt;……&lt;/p&gt;&lt;p&gt;沈姨越说越气，再想想乔家处境，不禁掉下眼泪：“但是乔熏……你可要拎拎清，别在这个时候跟陆泽闹。”&lt;/p&gt;&lt;p&gt;乔熏握紧手掌，指甲掐进肉里，可她感觉不到疼痛。&lt;/p&gt;&lt;p&gt;跟陆泽闹？&lt;/p&gt;&lt;p&gt;她不会的，不是因为她这个陆太太识大体，而是因为她没有资格。&lt;/p&gt;&lt;p&gt;不被爱的妻子，名分只是形同虚设！&lt;/p&gt;&lt;p&gt;她凝视着那漫天的烟花，很轻地说了句：“这么多烟花，一定要花很多钱吧！”&lt;/p&gt;&lt;p&gt;沈清不明白她的意思。&lt;/p&gt;&lt;p&gt;乔熏垂了眸子，开始拨打秦秘书的电话。&lt;/p&gt;&lt;p&gt;深夜，扰人清梦，总归让人不快。&lt;/p&gt;&lt;p&gt;秦秘书跟在陆泽身边久了，地位超然，况且她也知道陆泽对这个妻子不在意，于是在听说了乔熏的来意以后，语气凉薄又咄咄逼人。&lt;/p&gt;&lt;p&gt;“陆太太您得先申请，让陆总签字，才能拿到支票。”&lt;/p&gt;&lt;p&gt;“就像您身上的珠宝，也是需要登记才能使用。”&lt;/p&gt;&lt;p&gt;“陆太太，我的意思你明白吧？”&lt;/p&gt;&lt;p&gt;……&lt;/p&gt;&lt;p&gt;乔熏挂了电话。&lt;/p&gt;&lt;p&gt;她低着头很安静，半晌，她抬眼看着玻璃中的自己……轻轻抬了手。&lt;/p&gt;&lt;p&gt;纤细的无名指上，戴着结婚钻戒。&lt;/p&gt;&lt;p&gt;这是她身上，唯一不需要向陆泽申请，不需要向他的秘书登记报备的东西……她这个陆太太当得多可悲！&lt;/p&gt;&lt;p&gt;乔熏恍惚地眨了下眼，低道：“帮我找个人，把婚戒卖了！”&lt;/p&gt;&lt;p&gt;沈清呆住：“乔熏你是不是疯了？”&lt;/p&gt;&lt;p&gt;乔熏缓缓转身，深夜落寞的大厅，她的脚步声都是孤独的……走了几步，乔熏顿住身形，轻而坚定地说：“沈姨，我很清醒！从来没有这样清醒过。”&lt;/p&gt;&lt;p&gt;她要跟陆泽离婚。&lt;/p&gt;&lt;/div&gt; &lt;div class="more-btn-wrap" data-v-093c045c="" data-v-1846831c=""&gt;&lt;a class="qm-btn default large-2 radius" data-v-1846831c="" data-v-41e2fa47="" href="javascript:void(0);" target=""&gt;
                继续阅读&lt;i class="iconfont" data-v-1846831c="" data-v-41e2fa47=""&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="r-col" data-v-678a6052=""&gt;&lt;div class="works-list-wrap" data-v-678a6052=""&gt;&lt;div class="qm-with-title clearfix works-list-wrap-item vertical small" data-v-093c045c="" data-v-678a6052=""&gt;&lt;div class="qm-with-title-th" data-v-093c045c=""&gt;&lt;span data-v-093c045c=""&gt;该作者其它作品&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-with-title-tb" data-v-093c045c=""&gt;&lt;ul class="qm-pic-txt clearfix horizontal c-1 s-3 w-4" data-v-678a6052="" data-v-e2d72bbe=""&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/222713/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/b9c1a83748ef239ffde9b663a52417e8_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/222713/" target="_blank"&gt;
                            霍先生乖乖宠我
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;风羽轻轻&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1517964_0/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.qimao.com/bookimg/zww/upload/readerCover/506/1517964.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1517964_0/" target="_blank"&gt;
                            猫傲天的天猫年货节1
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14/" target="_blank"&gt;风羽轻轻&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-with-title clearfix works-list-wrap-item recommend vertical small" data-v-093c045c="" data-v-678a6052=""&gt;&lt;div class="qm-with-title-th" data-v-093c045c=""&gt;&lt;span data-v-093c045c=""&gt;90%看过的人还看&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-with-title-tb" data-v-093c045c=""&gt;&lt;ul class="qm-pic-txt clearfix horizontal c-1 s-3 w-4" data-v-678a6052="" data-v-e2d72bbe=""&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1699328/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/1c2eee190e9ed99104e4ca9f16836acc_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1699328/" target="_blank"&gt;
                            大佬归来，假千金她不装了
                        &lt;/a&gt;&lt;/span&gt; &lt;span class="s-des" data-v-e2d72bbe=""&gt;豪门小可怜竟是真玄门大佬&lt;/span&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E9%AA%91%E7%9D%80%E7%8C%AB%E7%9A%84%E5%B0%8F%E9%B1%BC%E5%B9%B2_14/" target="_blank"&gt;骑着猫的小鱼干&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1760716/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/efda031c74354ce65a4ddf8dcd600be6_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1760716/" target="_blank"&gt;
                            退婚后，厉总私下跪地求亲亲
                        &lt;/a&gt;&lt;/span&gt; &lt;span class="s-des" data-v-e2d72bbe=""&gt;虐妻一时爽，追妻火葬场，被退婚后，厉少每天亲亲抱抱举高高。&lt;/span&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E8%BF%B7%E4%BD%A0%E5%A4%9A_14/" target="_blank"&gt;迷你多&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1757829/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/5a807aa981e1e5880db99642d976614d_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1757829/" target="_blank"&gt;
                            太太走后，发现孕检单的叶总哭疯了
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E6%B9%98%E4%B8%8D%E7%96%91_14/" target="_blank"&gt;湘不疑&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1668613/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/dac66c636ab9bc7b9adfc8557d988974_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1668613/" target="_blank"&gt;
                            离婚后夫人携崽惊艳全球
                        &lt;/a&gt;&lt;/span&gt; &lt;span class="s-des" data-v-e2d72bbe=""&gt;离婚后，陆佑霆才发现，他早已经爱简思爱到无法自拔。&lt;/span&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E7%9B%B8%E6%80%9D%E9%B1%BC_14/" target="_blank"&gt;相思鱼&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1799490/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/63d3c7a48293a547bc1b1f4e23e62322_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1799490/" target="_blank"&gt;
                            渣男再见！我揣崽二婚你舅舅了
                        &lt;/a&gt;&lt;/span&gt; &lt;span class="s-des" data-v-e2d72bbe=""&gt;我孩子是你舅舅的！&lt;/span&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E8%99%8E%E9%87%91%E9%87%91_14/" target="_blank"&gt;虎金金&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1672601/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/9bf3/226966425a9cb51bef1188e52dadde71_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1672601/" target="_blank"&gt;
                            闪婚当晚我拉黑了首富老公
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E6%85%95%E5%AE%B9%E6%88%90%E7%B2%BE_83/" target="_blank"&gt;慕容成精&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1695227/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/812b/4e9f03c45acbd9efdffea30e3984a713_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1695227/" target="_blank"&gt;
                            闪婚后大叔每天狂宠我
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E7%8F%8D%E6%83%9C%E7%8F%8D_32/" target="_blank"&gt;珍惜珍&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1657347/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/63dc/5631ae986dc167a05e573696310ab6ba_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1657347/" target="_blank"&gt;
                            奶包四岁半：下山后七个哥哥团宠我
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E9%87%91%E7%B3%95_113/" target="_blank"&gt;金糕&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1684012/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/a3c6/02f1bb90db94e99ae7ce70c2c2f16044_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1684012/" target="_blank"&gt;
                            禁止离婚！陆律师蓄谋已久
                        &lt;/a&gt;&lt;/span&gt; &lt;span class="s-des" data-v-e2d72bbe=""&gt;腹黑大佬vs全能女妖精，熟男熟女极致拉扯&lt;/span&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E5%90%AC%E5%B1%B1_14/" target="_blank"&gt;听山&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;li data-v-e2d72bbe=""&gt;&lt;div class="pic" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1692779/" target="_blank"&gt;&lt;img alt="" data-v-e2d72bbe="" height="120px" src="https://cdn.wtzw.com/bookimg/public/images/cover/c52f/e1133d269e1ffcd3652d4cebbb00741a_360x480.jpg" width="90px"/&gt; &lt;div class="pic-book-tag" data-v-e2d72bbe=""&gt;&lt;/div&gt;&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="txt" data-v-e2d72bbe=""&gt;&lt;div class="top" data-v-e2d72bbe=""&gt;&lt;span class="s-tit" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/shuku/1692779/" target="_blank"&gt;
                            八年后，9个萌娃带着苏小姐回来打脸了
                        &lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt;&lt;/div&gt; &lt;div class="bottom clearfix" data-v-e2d72bbe=""&gt;&lt;span class="s-author" data-v-e2d72bbe=""&gt;&lt;a data-v-e2d72bbe="" href="https://www.qimao.com/zuozhe/%E5%8D%81%E6%9C%88%E5%BE%AE%E5%87%89_284/" target="_blank"&gt;十月微凉&lt;/a&gt;&lt;/span&gt; &lt;!-- --&gt; &lt;!-- --&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt; &lt;/li&gt;&lt;/ul&gt; &lt;div class="more-btn-wrap" data-v-093c045c="" data-v-678a6052=""&gt;&lt;a data-v-093c045c="" data-v-678a6052="" href="https://www.qimao.com/shuku/a-1-8-a-a-a-a-click-1/" target="_blank"&gt;更多作品&lt;i class="iconfont" data-v-093c045c="" data-v-678a6052=""&gt;&lt;/i&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-footer" data-v-29762df3="" data-v-f85172b0=""&gt;&lt;div class="qm-footer-con border" data-v-29762df3=""&gt;&lt;ul class="small-link qm-footer-con-row" data-v-29762df3=""&gt;&lt;li class="mr16" data-v-29762df3=""&gt;友情链接：&lt;/li&gt; &lt;/ul&gt; &lt;ul class="p-link qm-footer-con-row" data-v-29762df3=""&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="/about.html" target="_blank"&gt;关于七猫&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="/contact.html" target="_blank"&gt;联系我们&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="javascript:void(0)"&gt;我要举报&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="https://zuozhe.qimao.com/front/report-studio" target="_blank"&gt;举报工作室&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="/privacy_agreed.html" target="_blank"&gt;隐私协议&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="/copyright.html" target="_blank"&gt;版权声明&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="https://zuozhe.qimao.com" target="_blank"&gt;我要当作家&lt;/a&gt; &lt;i data-v-29762df3=""&gt;|&lt;/i&gt;&lt;/li&gt;&lt;li data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="/user_agreed.html" target="_blank"&gt;用户协议&lt;/a&gt; &lt;!-- --&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="p-txt qm-footer-con-row" data-v-29762df3=""&gt;&lt;span class="txt" data-v-29762df3=""&gt;客服电话：400-855-9290&lt;/span&gt; &lt;span class="txt" data-v-29762df3=""&gt;工作时间：周一至周五9:00-18:00&lt;/span&gt;&lt;/p&gt; &lt;p class="p-copyright qm-footer-con-row" data-v-29762df3=""&gt;
            上海七猫文化传媒有限公司   © 2017 www.qimao.com All rights reserved   
            &lt;a data-v-29762df3="" href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank"&gt;
                沪ICP备17012825号-6
            &lt;/a&gt;
             沪公网安备 31011502010023号
            &lt;a data-v-29762df3="" href="https://wap.scjgj.sh.gov.cn/businessCheck/verifKey.do?showType=extShow&amp;amp;serial=9031000020190722152105000004867583-SAIC_SHOW_310000-2020030415053789015&amp;amp;signData=MEQCIEkBkB9iRQU6cFZkvRZxUFL3bfnb79F47g/DlN1cyQz2AiAMvdmNY5e++2nkv9YcqfTuyni81uITxhyu08vw3HgQNA=="&gt;&lt;img alt="" data-v-29762df3="" height="20" width="20"/&gt;&lt;/a&gt; &lt;br data-v-29762df3=""/&gt;
            出版物经营许可证 新出发沪批字第Y7129号  沪网文 [2020] 1747-135号  沪ICP证：沪B2-20190085
        &lt;/p&gt; &lt;p class="p-company qm-footer-con-row" data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="上海网警网络举报平台" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="https://www.12377.cn/"&gt;&lt;img alt="中央网信办不良信息举报中心" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="网络举报APP下载" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="http://www.shjbzx.cn/"&gt;&lt;img alt="上海市互联网违法和不良信息举报中心" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="企业注册登记信息" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt; &lt;div class="qm-pop" data-v-29762df3="" data-v-44d0399c="" style="display:none;"&gt;&lt;div class="qm-pop-mask" data-v-44d0399c=""&gt;&lt;/div&gt; &lt;div class="qm-pop-mod w-550" data-v-44d0399c=""&gt;&lt;i class="iconfont qm-pop-close-btn" data-v-44d0399c=""&gt;&lt;/i&gt; &lt;div class="qm-pop-mod-th" data-v-44d0399c=""&gt;&lt;span class="s-tit" data-v-44d0399c=""&gt;举报&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-pop-mod-tb" data-v-44d0399c=""&gt;&lt;div&gt;&lt;ul class="qm-form" labelwidth="90px"&gt;&lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        举报类型
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-select middle" data-v-1fc8509c=""&gt;&lt;span class="qm-select-label" data-v-1fc8509c=""&gt;&lt;em class="placeholder" data-v-1fc8509c=""&gt;请选择&lt;/em&gt;&lt;/span&gt; &lt;ul class="qm-select-list" data-v-1fc8509c="" style="display:none;"&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        章节链接
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;textarea data-v-80115cbc="" resize="none"&gt;&lt;/textarea&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;em class="em-must" data-v-392ccf9f=""&gt;*&lt;/em&gt;
        举报内容
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;textarea data-v-80115cbc="" resize="none"&gt;&lt;/textarea&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;!-- --&gt;
        联系方式
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;div class="qm-input middle" data-v-80115cbc=""&gt;&lt;div class="qm-input-con" data-v-80115cbc=""&gt;&lt;input data-v-80115cbc="" maxlength="" minlength="minlength" type="text" value=""/&gt; &lt;!-- --&gt; &lt;span class="qm-input-placeholder" data-v-80115cbc=""&gt;请输入&lt;/span&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/li&gt; &lt;li class="qm-form-item" data-v-392ccf9f=""&gt;&lt;span class="label" data-v-392ccf9f="" style="width:90px;"&gt;&lt;!-- --&gt;
        举报电话
        &lt;/span&gt; &lt;div class="item" data-v-392ccf9f="" style="margin-left:90px;"&gt;&lt;span class="s-tit" data-v-392ccf9f=""&gt;400-855-9290（周一到周五 9:00-18:00）&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt; &lt;div class="qm-pop-mod-tf" data-v-44d0399c=""&gt;&lt;a class="qm-btn inline-block important large radius" data-v-41e2fa47="" data-v-44d0399c="" href="javascript:void(0);" target=""&gt;提交&lt;/a&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;ul class="qm-fixed-right common-fixed-right bottom type-2" data-v-054aa16c="" data-v-754474f8="" data-v-f85172b0=""&gt;&lt;li class="qm-fixed-right-item hover download-pop-zjzs" data-v-754474f8=""&gt;&lt;div class="qm-fixed-right-extend" data-v-754474f8="" style="display:;"&gt;&lt;div class="qm-fixed-right-extend-con download-pop-zjzs" data-v-754474f8=""&gt;&lt;!-- --&gt; &lt;div class="qm-app-download-code clearfix" data-v-054aa16c="" data-v-f6536320=""&gt; &lt;div class="pop right" data-v-f6536320=""&gt;&lt;img alt="七猫免费小说作家助手app" data-v-054aa16c="" data-v-f6536320="" height="210" src="https://cdn.qimao.com/bookimg/zww/frontendstatic/20200313/images/common/new-app_zhushou_pic.png" width="160"/&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;a class="qm-fixed-right-link" data-v-754474f8="" href="javascript:void(0)"&gt;&lt;!-- --&gt; &lt;span class="s-tit" data-v-754474f8=""&gt;作家&lt;br/&gt;助手&lt;/span&gt; &lt;i class="i-arrow" data-v-754474f8=""&gt;&lt;/i&gt;&lt;/a&gt;&lt;/li&gt;&lt;li class="qm-fixed-right-item" data-v-754474f8=""&gt;&lt;!-- --&gt; &lt;a class="qm-fixed-right-link" data-v-754474f8="" href="https://xiaoshuo.wtzw.com/" target="_blank"&gt;&lt;!-- --&gt; &lt;span class="s-tit" data-v-754474f8=""&gt;免费&lt;br/&gt;小说&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li class="qm-fixed-right-item" data-v-754474f8=""&gt;&lt;!-- --&gt; &lt;a class="qm-fixed-right-link" data-v-754474f8="" href="https://www.qimao.com/2024fuli.html?type=editor" target="_blank"&gt;&lt;!-- --&gt; &lt;span class="s-tit" data-v-754474f8=""&gt;联系&lt;br/&gt;编辑&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li class="qm-fixed-right-item hover wechat-pop" data-v-754474f8=""&gt;&lt;div class="qm-fixed-right-extend" data-v-754474f8="" style="display:;"&gt;&lt;div class="qm-fixed-right-extend-con wechat-pop" data-v-754474f8=""&gt;&lt;!-- --&gt; &lt;div class="wechat-pop" data-v-054aa16c="" data-v-754474f8=""&gt;&lt;div class="qrcode-tit" data-v-054aa16c="" data-v-754474f8=""&gt;七猫中文网公众号&lt;/div&gt; &lt;img alt="" class="qrcode-img" data-v-054aa16c="" data-v-754474f8=""/&gt; &lt;div class="qrcode-txt" data-v-054aa16c="" data-v-754474f8=""&gt;微信扫一扫关注&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;a class="qm-fixed-right-link" data-v-754474f8="" href="javascript:void(0)"&gt;&lt;i class="iconfont" data-v-754474f8=""&gt;&lt;/i&gt; &lt;span class="s-tit" data-v-754474f8=""&gt;公众号&lt;/span&gt; &lt;i class="i-arrow" data-v-754474f8=""&gt;&lt;/i&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;div class="qm-pop login-success-pop" data-v-0d7eba43="" data-v-44d0399c="" data-v-f85172b0="" style="display:none;"&gt;&lt;div class="qm-pop-mask" data-v-44d0399c=""&gt;&lt;/div&gt; &lt;div class="qm-pop-mod w-400" data-v-44d0399c=""&gt;&lt;i class="iconfont qm-pop-close-btn" data-v-44d0399c=""&gt;&lt;/i&gt; &lt;div class="qm-pop-mod-th" data-v-44d0399c=""&gt;&lt;span class="s-tit" data-v-44d0399c=""&gt;新人注册&lt;/span&gt;&lt;/div&gt; &lt;div class="qm-pop-mod-tb" data-v-44d0399c=""&gt;&lt;div class="txt" data-v-0d7eba43=""&gt;&lt;span class="s-des" data-v-0d7eba43=""&gt;现可免费阅读全站小说，扫描下方二维码，下载七猫免费小说APP，更多新人福利等着你！&lt;/span&gt; &lt;div class="qr-code" data-v-0d7eba43=""&gt;&lt;img alt="七猫免费小说app" data-v-0d7eba43="" height="140" width="140"/&gt; &lt;em data-v-0d7eba43=""&gt;下载七猫免费小说APP&lt;/em&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt; &lt;!-- --&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;script&gt;window.__NUXT__=(function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z){V[0]={title:"霍先生乖乖宠我",author:F,image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002Fb9c1a83748ef239ffde9b663a52417e8_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F222713\u002F",author_url:G};V[1]={title:"猫傲天的天猫年货节1",author:F,image_link:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzww\u002Fupload\u002FreaderCover\u002F506\u002F1517964.jpg?time=1708672309",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1517964_0\u002F",author_url:G};return {layout:"default-inside",data:[{bookId:H,isReaderWrapper:b}],fetch:{"data-v-678a6052:0":{tabActive:"intro",isInBookshelf:b}},error:null,state:{userInfo:{},reader:{themesArr:[l,"blue","yellow","green","red","dark"],theme:l,fontSize:"18",fontFamily:a,hasSetThemeServer:b,chaptersCatalogList:[],currentBookId:a,currentChapterId:a,bookInfo:{title:a,author:a,chapterTitle:a},showReaderLimit:b,limitScroll:b},smcaptchaStatus:b,themeStyle:{"default-wrapper-bg":"#e0e0e0","default-first-color":"#222","default-second-color":"#666","default-third-color":"#999","default-content-bg":"#f5f5f5","default-dash-line-color":I,"default-cover-outline-color":I,"default-btn-bg-color":"linear-gradient(270deg,#eaeaea,#f5f5f5)","default-mask-bg-color":"linear-gradient(180deg,rgba(254,242,242,0),#f5f5f5)","blue-wrapper-bg":J,"blue-first-color":"#131a1e","blue-second-color":"#5b6265","blue-third-color":"#93999d","blue-content-bg":"#f5f8fb","blue-dash-line-color":J,"blue-cover-outline-color":"#dcdee1","blue-btn-bg-color":"linear-gradient(270deg,#e6eaef,#f5f8fb)","blue-mask-bg-color":"linear-gradient(180deg,rgba(254,242,242,0),#f5f8fb)","#ff0-wrapper-bg":"#e3d9bc","#ff0-first-color":"#413b2a","#ff0-second-color":"#6e6a5f","#ff0-third-color":"#949289","#ff0-content-bg":"#f4f1e9","#ff0-dash-line-color":"#e1dcd3","#ff0-cover-outline-color":"#e7e3d8","#ff0-btn-bg-color":"linear-gradient(270deg,#e9e5da,#f4f1e9)","#ff0-mask-bg-color":"linear-gradient(180deg,rgba(254,242,242,0),#f4f1e9)","green-wrapper-bg":"#ddebd6","green-first-color":"#394434","green-second-color":"#62695f","green-third-color":"#90978c","green-content-bg":"#f5faf2","green-dash-line-color":"#dce0d9","green-cover-outline-color":"#e3ecde","green-btn-bg-color":"linear-gradient(270deg,#ecf9e5,#f0f8eb)","green-mask-bg-color":"linear-gradient(180deg,rgba(254,242,242,0),#f5faf2)","red-wrapper-bg":"#f3d8d8","red-first-color":"#453030","red-second-color":"#675656","red-third-color":"#a79696","red-content-bg":"#fef2f2","red-dash-line-color":"#e4d9d9","red-cover-outline-color":"#f0dfdf","red-btn-bg-color":"linear-gradient(270deg,#f1dfdf,#fef2f2)","red-mask-bg-color":"linear-gradient(180deg,rgba(254,242,242,0),#fef2f2)","dark-wrapper-bg":"#242121","dark-first-color":"#ccc","dark-second-color":K,"dark-third-color":K,"dark-content-bg":"#353535","dark-dash-line-color":"#494949","dark-cover-outline-color":"#464646","dark-btn-bg-color":"linear-gradient(270deg,#2d2d2d,#353535)","dark-mask-bg-color":"linear-gradient(180deg,rgba(53,53,53,0),#353535)"},readerChapterInfo:{nextChapter:{},prevChapter:{},chapterInfo:{},bookSummary:{},isLoginStatus:b,chapterData:a,showDom:b},recommendBookInfo:{},indexBannerList:[],paihang:{pathNameMap:{top:{name:m,rank_type:n,rule:L,rule_info:M,showDateSelect:d,is_show:b,date_type:[e],txt:a},leap:{name:o,rank_type:p,rule:N,rule_info:O,showDateSelect:b,is_show:b,date_type:[e],txt:a},hot:{name:q,rank_type:c,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i},new:{name:r,rank_type:s,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i,rule_info_girl:P,rule_info:Q},over:{name:t,rank_type:j,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i},collect:{rank_type:k,name:u,date_rule:R,is_show:d,date_type:[f],txt:v},update:{rank_type:w,name:x,date_rule:S,is_show:d,date_type:[f],txt:v}},defaultPath:a,currentMenuInfo:{},menuList:[{rank_type:n,path:y,name:m},{rank_type:p,name:o,path:z},{rank_type:l,path:a,name:T,child:[{rank_type:c,name:q,path:A},{rank_type:s,name:r,path:B},{rank_type:j,name:t,path:C},{rank_type:k,name:u,path:D},{rank_type:w,name:x,path:E}]}],paramsRankArr:[y,z,A,B,C,D,U,E]},book:{bookShelfHistoryData:{},bookChapterList:[]},common:{editorList:{female:[],male:[]},hasGetUserInfoStatus:b,commonFixedRightNeedOffset:b,bookRelatedInfo:{authorDetail:{author_name:F,avatar:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzww\u002Fupload\u002Favatar\u002F0\u002F1695152756510805.jpg",book_count:j,total_words:"340.38",total_days:"779",is_original:c,author_level:"5",other_books:V,intro:a,reg_time:a,badge_count:a,author_url:G,source_id:W},bookDetail:{book_id:H,original_book_id:"1392535",latest_chapter_id:"17126706010317",latest_chapter_title:"第317章  真实身份：孟烟跟沈家的关系2",words_num:"84.86",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002F281ab03649966264cb17d4365563e1d9_360x480.jpg",author:F,author_url:G,title:"禁止离婚！陆少夜夜跪地轻哄",category_1_name:"现代言情",first_category_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002Fa-1-a-a-a-a-a-click-1\u002F",second_category_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002Fa-1-8-a-a-a-a-click-1\u002F",latest_chapter_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1738767-17126706010317\u002F",category_2_name:"总裁豪门",score:"8.9",pursue_count:"215.4",hot_value:"621.5",characters:"陆泽,乔熏",is_over:"0",is_sign:c,source_id:W,update_time:"2024-04-09 21:50:04",gender:c,up_status:c,catalogue_num:"317"},extraConfig:{home_url:"https:\u002F\u002Fwww.qimao.com"},authorOtherBook:V,bookIntroData:{intro:"结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。\n乔熏全部忍耐，因为她深爱陆泽！\n直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……\n她终于释然：有些人的心永远捂不热。\n乔熏写下一纸离婚协议，悄然离开。\n……\n两年后乔熏归来，身边追求者无数。\n她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”\n乔熏笑颜淡淡：“陆先生，我们之间再无关系！”\n男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”",first_chapter_title:"第1章  没有爱的婚姻，犹如笼牢",first_chapter_content:"\u003Cp\u003E乔熏不知道，是不是出轨的男人，都有两部手机。\u003C\u002Fp\u003E\u003Cp\u003E陆泽洗澡的时候，他的情人发来一张自拍。\u003C\u002Fp\u003E\u003Cp\u003E那是个很年轻的女孩儿，长相清秀，却穿着与年龄不符的贵气衣裳，所以显得有些局促。\u003C\u002Fp\u003E\u003Cp\u003E【陆先生，谢谢您的生日礼物。】\u003C\u002Fp\u003E\u003Cp\u003E乔熏看了很久，直到眼睛泛酸。她一直知道陆泽身边有个人，只是没想到会是这样的女孩子，心痛之外她也惊讶丈夫的喜好。\u003C\u002Fp\u003E\u003Cp\u003E她想，真是抱歉，看见了陆泽的秘密。\u003C\u002Fp\u003E\u003Cp\u003E背后传来浴室门拉开的声音。\u003C\u002Fp\u003E\u003Cp\u003E片刻，陆泽带着一身水气出来，雪白浴衣包裹着壁垒分明的腹肌和结实的胸膛，英挺性感。\u003C\u002Fp\u003E\u003Cp\u003E“还要看多久？”\u003C\u002Fp\u003E\u003Cp\u003E他抽掉乔熏手里手机，睨她一眼，便开始穿衣服。\u003C\u002Fp\u003E\u003Cp\u003E他的神情间，没有一丝被妻子戳穿的窘迫。乔熏清楚，他的底气来源于经济，因为乔熏是被他养在家里的，即使婚前她也曾是国内知名小提琴手。\u003C\u002Fp\u003E\u003Cp\u003E乔熏没跟他计较那张照片，她也计较不起。\u003C\u002Fp\u003E\u003Cp\u003E看出他要出门，她连忙开口：“陆泽，我有话想跟你说。”\u003C\u002Fp\u003E\u003Cp\u003E男人慢条斯理地扣好皮带，看向妻子，大概是想起方才她在床上逆来顺受的柔弱姿态，不禁哼笑：“又想要了？”\u003C\u002Fp\u003E\u003Cp\u003E但这亲昵，也不过是狎玩。\u003C\u002Fp\u003E\u003Cp\u003E他从未将这个妻子放在心上，只是因为一场意外，不得不娶罢了。\u003C\u002Fp\u003E\u003Cp\u003E陆泽收回目光，拿起床头柜上一块百达翡丽男表戴到手腕上，语气浅淡：“我还有五分钟时间，司机在楼下等着了。”\u003C\u002Fp\u003E\u003Cp\u003E乔熏猜到他去哪，眼神一暗：“陆泽，我想出去工作。”\u003C\u002Fp\u003E\u003Cp\u003E出去工作？\u003C\u002Fp\u003E\u003Cp\u003E陆泽扣好表带侧身看她，看了半晌，从衣袋里掏出支票薄写下一组数字，撕下来递给她：“在家里当全职太太不好吗？工作不适合你。”\u003C\u002Fp\u003E\u003Cp\u003E说完，他就要走。\u003C\u002Fp\u003E\u003Cp\u003E乔熏追过去，姿态放得很低：“我不怕辛苦！我想出去工作……我会拉小提琴……”\u003C\u002Fp\u003E\u003Cp\u003E男人没有耐心听下去。\u003C\u002Fp\u003E\u003Cp\u003E在他心里，乔熏就像是一株依附人的柔弱菟丝花，让人养习惯了，根本不适合抛头露面更吃不了苦。\u003C\u002Fp\u003E\u003Cp\u003E陆泽抬手看了下表：“时间到了！”\u003C\u002Fp\u003E\u003Cp\u003E他不带留恋地离开，乔熏留不住他，只在他握住门把时抓紧着问：“周六我爸爸过寿，你有时间吗？”\u003C\u002Fp\u003E\u003Cp\u003E陆泽脚步一顿：“再看吧！”\u003C\u002Fp\u003E\u003Cp\u003E门轻轻合上，一会儿楼下传来汽车发动的声音，渐行渐远。\u003C\u002Fp\u003E\u003Cp\u003E几分钟后，佣人上楼。\u003C\u002Fp\u003E\u003Cp\u003E她们知道先生太太感情一般，于是当了这个传声筒：“先生要去H市几天，说是有重要的事情。另外，刚刚公司送来一批先生的换洗衣物，太太，是送洗还是您亲自手洗熨烫？”\u003C\u002Fp\u003E\u003Cp\u003E乔熏跪坐在沙发上。\u003C\u002Fp\u003E\u003Cp\u003E半晌她才回神，轻声说：“手洗吧！”\u003C\u002Fp\u003E\u003Cp\u003E因为陆泽不喜欢干洗的溶剂味道，所以陆泽的所有衣服，包括西装大衣，几乎都是乔熏手洗然后熨烫。\u003C\u002Fp\u003E\u003Cp\u003E除了这个，其他方面，陆泽要求也高。\u003C\u002Fp\u003E\u003Cp\u003E他不爱吃外面的菜，他不喜欢卧室有一丝杂乱。乔熏便学了烹饪、整理、插花……她逐渐成为完美的全职太太。\u003C\u002Fp\u003E\u003Cp\u003E她的人生，也几乎只剩下陆泽。\u003C\u002Fp\u003E\u003Cp\u003E但陆泽依然不爱她。\u003C\u002Fp\u003E\u003Cp\u003E乔熏低头，注视着那张支票。\u003C\u002Fp\u003E\u003Cp\u003E去年她娘家倒了，哥哥被指控人在看守所，她的爸爸突发疾病每月所花都不止十万，每次回家沈姨都抱怨她从陆泽这里拿得太少。\u003C\u002Fp\u003E\u003Cp\u003E“他是陆氏医药集团总裁，身家千亿……乔熏你跟他是夫妻，他的难道不就是你的吗？”\u003C\u002Fp\u003E\u003Cp\u003E乔熏苦笑。\u003C\u002Fp\u003E\u003Cp\u003E陆泽的怎么会是她的？\u003C\u002Fp\u003E\u003Cp\u003E陆泽不爱她，平时对她很冷淡，他们的婚姻只有性没有爱，他甚至不允许她生下他的孩子，每次同房他都会提醒她吃药。\u003C\u002Fp\u003E\u003Cp\u003E对，她得吃药。\u003C\u002Fp\u003E\u003Cp\u003E乔熏摸到药瓶，倒出一颗木然吞下。\u003C\u002Fp\u003E\u003Cp\u003E吞完药片，她轻轻拉开一个小抽屉，里面是本厚厚的日记本，翻开全是18岁的乔熏对陆泽满满的爱恋——\u003C\u002Fp\u003E\u003Cp\u003E六年，她爱了他整整六年！\u003C\u002Fp\u003E\u003Cp\u003E乔熏蓦地闭上眼睛。\u003C\u002Fp\u003E\u003Cp\u003E……\u003C\u002Fp\u003E\u003Cp\u003E乔熏没等到陆泽回来，周五晚上，乔家出了大事。\u003C\u002Fp\u003E\u003Cp\u003E有消息递出来，乔家长子——乔时宴，因为乔氏集团的经济案，可能要判十年。\u003C\u002Fp\u003E\u003Cp\u003E十年，足以摧毁一个人。\u003C\u002Fp\u003E\u003Cp\u003E当晚，乔父急性脑出血入院，情况很危急需要立刻手术。\u003C\u002Fp\u003E\u003Cp\u003E乔熏站在医院过道，不停给陆泽打电话，但是打了好几次也没有人接。就在她放弃时，陆泽给她发了微信。\u003C\u002Fp\u003E\u003Cp\u003E一如既往，惜字如金。\u003C\u002Fp\u003E\u003Cp\u003E【我还在H市，有事的话找秦秘书。】\u003C\u002Fp\u003E\u003Cp\u003E乔熏再打过去，这一次陆泽接听了，她连忙说：“陆泽，我爸爸……”\u003C\u002Fp\u003E\u003Cp\u003E陆泽打断她。\u003C\u002Fp\u003E\u003Cp\u003E他的语气带着一丝不耐：“是需要用钱吗？我说过很多次了，急用钱的话就找秦秘书……乔熏，你在听吗？”\u003C\u002Fp\u003E\u003Cp\u003E……\u003C\u002Fp\u003E\u003Cp\u003E乔熏仰头望着电子屏幕，表情怔怔的，那上面正在放新闻。\u003C\u002Fp\u003E\u003Cp\u003E【陆氏医药集团总裁，为博红颜一笑，包下整个迪斯尼放烟花。】\u003C\u002Fp\u003E\u003Cp\u003E满天璀璨烟花下，\u003C\u002Fp\u003E\u003Cp\u003E年轻的女孩儿坐在轮椅上，笑得清纯可爱，而她的丈夫陆泽，站在轮椅后面……他手里握着手机正与她通话。\u003C\u002Fp\u003E\u003Cp\u003E乔熏轻轻眨眼。\u003C\u002Fp\u003E\u003Cp\u003E良久，她声音带了一丝破碎：“陆泽你在哪儿？”\u003C\u002Fp\u003E\u003Cp\u003E对面顿了顿，似乎很不高兴她的查岗，但还是敷衍了句：“还在忙，没事的话我挂了，你跟秦秘书联系。”\u003C\u002Fp\u003E\u003Cp\u003E他没有察觉她快哭的语调，但他低头望向旁人的目光……很温柔很温柔。\u003C\u002Fp\u003E\u003Cp\u003E乔熏眼前一片模糊——\u003C\u002Fp\u003E\u003Cp\u003E原来，陆泽也有这么温柔的样子。\u003C\u002Fp\u003E\u003Cp\u003E背后，传来继母沈清的声音：“跟陆泽联系上没有？乔熏，这个事情你一定要找陆泽帮……”\u003C\u002Fp\u003E\u003Cp\u003E沈清的话顿住，因为她也看见了电子屏幕上的一幕。\u003C\u002Fp\u003E\u003Cp\u003E半晌，沈清才找回自己的声音：“他又去H市了？乔熏我就不信，当年陆泽昏迷，这个叫白筱筱的女的拉个小提琴就把人唤醒了？即使真是这样，有这样报答的吗？”\u003C\u002Fp\u003E\u003Cp\u003E“你的生日他都记不住！”\u003C\u002Fp\u003E\u003Cp\u003E……\u003C\u002Fp\u003E\u003Cp\u003E沈姨越说越气，再想想乔家处境，不禁掉下眼泪：“但是乔熏……你可要拎拎清，别在这个时候跟陆泽闹。”\u003C\u002Fp\u003E\u003Cp\u003E乔熏握紧手掌，指甲掐进肉里，可她感觉不到疼痛。\u003C\u002Fp\u003E\u003Cp\u003E跟陆泽闹？\u003C\u002Fp\u003E\u003Cp\u003E她不会的，不是因为她这个陆太太识大体，而是因为她没有资格。\u003C\u002Fp\u003E\u003Cp\u003E不被爱的妻子，名分只是形同虚设！\u003C\u002Fp\u003E\u003Cp\u003E她凝视着那漫天的烟花，很轻地说了句：“这么多烟花，一定要花很多钱吧！”\u003C\u002Fp\u003E\u003Cp\u003E沈清不明白她的意思。\u003C\u002Fp\u003E\u003Cp\u003E乔熏垂了眸子，开始拨打秦秘书的电话。\u003C\u002Fp\u003E\u003Cp\u003E深夜，扰人清梦，总归让人不快。\u003C\u002Fp\u003E\u003Cp\u003E秦秘书跟在陆泽身边久了，地位超然，况且她也知道陆泽对这个妻子不在意，于是在听说了乔熏的来意以后，语气凉薄又咄咄逼人。\u003C\u002Fp\u003E\u003Cp\u003E“陆太太您得先申请，让陆总签字，才能拿到支票。”\u003C\u002Fp\u003E\u003Cp\u003E“就像您身上的珠宝，也是需要登记才能使用。”\u003C\u002Fp\u003E\u003Cp\u003E“陆太太，我的意思你明白吧？”\u003C\u002Fp\u003E\u003Cp\u003E……\u003C\u002Fp\u003E\u003Cp\u003E乔熏挂了电话。\u003C\u002Fp\u003E\u003Cp\u003E她低着头很安静，半晌，她抬眼看着玻璃中的自己……轻轻抬了手。\u003C\u002Fp\u003E\u003Cp\u003E纤细的无名指上，戴着结婚钻戒。\u003C\u002Fp\u003E\u003Cp\u003E这是她身上，唯一不需要向陆泽申请，不需要向他的秘书登记报备的东西……她这个陆太太当得多可悲！\u003C\u002Fp\u003E\u003Cp\u003E乔熏恍惚地眨了下眼，低道：“帮我找个人，把婚戒卖了！”\u003C\u002Fp\u003E\u003Cp\u003E沈清呆住：“乔熏你是不是疯了？”\u003C\u002Fp\u003E\u003Cp\u003E乔熏缓缓转身，深夜落寞的大厅，她的脚步声都是孤独的……走了几步，乔熏顿住身形，轻而坚定地说：“沈姨，我很清醒！从来没有这样清醒过。”\u003C\u002Fp\u003E\u003Cp\u003E她要跟陆泽离婚。\u003C\u002Fp\u003E",up_status:c,continue_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1738767-16956972510001\u002F",badge_list:[{badge_count:k,badge_title:X,badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Ftop_4.png?v=1655049600"},{badge_count:c,badge_title:"滔滔不绝",badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Fcomment_3.png?v=1639389775"},{badge_count:c,badge_title:"谈笑风生",badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Fcomment_2.png?v=1639389775"},{badge_count:c,badge_title:X,badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Fleap_4.png?v=1655049600"},{badge_count:c,badge_title:"高谈阔论",badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Fcomment_1.png?v=1640141984"},{badge_count:c,badge_title:"红红火火",badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Freward_2.png?v=1640141984"},{badge_count:c,badge_title:"招财进宝",badge_image:"https:\u002F\u002Fcdn.qimao.com\u002Fbookimg\u002Fzuozhe\u002Fauthorstatic\u002Fimages\u002Fbadges\u002Freward_1.png?v=1640141984"}]},recommendBook:[{title:"大佬归来，假千金她不装了",author:"骑着猫的小鱼干",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002F1c2eee190e9ed99104e4ca9f16836acc_360x480.jpg",short_comment:"豪门小可怜竟是真玄门大佬",book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1699328\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E9%AA%91%E7%9D%80%E7%8C%AB%E7%9A%84%E5%B0%8F%E9%B1%BC%E5%B9%B2_14\u002F"},{title:"退婚后，厉总私下跪地求亲亲",author:"迷你多",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002Fefda031c74354ce65a4ddf8dcd600be6_360x480.jpg",short_comment:"虐妻一时爽，追妻火葬场，被退婚后，厉少每天亲亲抱抱举高高。",book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1760716\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E8%BF%B7%E4%BD%A0%E5%A4%9A_14\u002F"},{title:"太太走后，发现孕检单的叶总哭疯了",author:"湘不疑",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002F5a807aa981e1e5880db99642d976614d_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1757829\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E6%B9%98%E4%B8%8D%E7%96%91_14\u002F"},{title:"离婚后夫人携崽惊艳全球",author:"相思鱼",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002Fdac66c636ab9bc7b9adfc8557d988974_360x480.jpg",short_comment:"离婚后，陆佑霆才发现，他早已经爱简思爱到无法自拔。",book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1668613\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E7%9B%B8%E6%80%9D%E9%B1%BC_14\u002F"},{title:"渣男再见！我揣崽二婚你舅舅了",author:"虎金金",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002F63d3c7a48293a547bc1b1f4e23e62322_360x480.jpg",short_comment:"我孩子是你舅舅的！",book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1799490\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E8%99%8E%E9%87%91%E9%87%91_14\u002F"},{title:"闪婚当晚我拉黑了首富老公",author:"慕容成精",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002F9bf3\u002F226966425a9cb51bef1188e52dadde71_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1672601\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E6%85%95%E5%AE%B9%E6%88%90%E7%B2%BE_83\u002F"},{title:"闪婚后大叔每天狂宠我",author:"珍惜珍",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002F812b\u002F4e9f03c45acbd9efdffea30e3984a713_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1695227\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E7%8F%8D%E6%83%9C%E7%8F%8D_32\u002F"},{title:"奶包四岁半：下山后七个哥哥团宠我",author:"金糕",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002F63dc\u002F5631ae986dc167a05e573696310ab6ba_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1657347\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E9%87%91%E7%B3%95_113\u002F"},{title:"禁止离婚！陆律师蓄谋已久",author:"听山",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fa3c6\u002F02f1bb90db94e99ae7ce70c2c2f16044_360x480.jpg",short_comment:"腹黑大佬vs全能女妖精，熟男熟女极致拉扯",book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1684012\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E5%90%AC%E5%B1%B1_14\u002F"},{title:"八年后，9个萌娃带着苏小姐回来打脸了",author:"十月微凉",image_link:"https:\u002F\u002Fcdn.wtzw.com\u002Fbookimg\u002Fpublic\u002Fimages\u002Fcover\u002Fc52f\u002Fe1133d269e1ffcd3652d4cebbb00741a_360x480.jpg",short_comment:a,book_read_url:"https:\u002F\u002Fwww.qimao.com\u002Fshuku\u002F1692779\u002F",author_url:"https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E5%8D%81%E6%9C%88%E5%BE%AE%E5%87%89_284\u002F"}]},commonConfig:{partner_list:[],author_level_pic:{}},isIEBrowser:b,isCloseReader:b,isCloseReaderText:Y},modules:{book:{bookShelfHistoryData:{},bookChapterList:[]},common:{editorList:{female:[],male:[]},hasGetUserInfoStatus:b,commonFixedRightNeedOffset:b,bookRelatedInfo:{authorDetail:{},bookDetail:{},extraConfig:{},authorOtherBook:[],bookIntroData:{},recommendBook:[]},commonConfig:{partner_list:[],author_level_pic:{}},isIEBrowser:b,isCloseReader:b,isCloseReaderText:Y},paihang:{pathNameMap:{top:{name:m,rank_type:n,rule:L,rule_info:M,showDateSelect:d,is_show:b,date_type:[e],txt:a},leap:{name:o,rank_type:p,rule:N,rule_info:O,showDateSelect:b,is_show:b,date_type:[e],txt:a},hot:{name:q,rank_type:c,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i},new:{name:r,rank_type:s,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i,rule_info_girl:P,rule_info:Q},over:{name:t,rank_type:j,date_rule:g,month_rule:h,is_show:d,date_type:[f,e],txt:i},collect:{rank_type:k,name:u,date_rule:R,is_show:d,date_type:[f],txt:v},update:{rank_type:w,name:x,date_rule:S,is_show:d,date_type:[f],txt:v}},defaultPath:a,currentMenuInfo:{},menuList:[{rank_type:n,path:y,name:m},{rank_type:p,name:o,path:z},{rank_type:l,path:a,name:T,child:[{rank_type:c,name:q,path:A},{rank_type:s,name:r,path:B},{rank_type:j,name:t,path:C},{rank_type:k,name:u,path:D},{rank_type:w,name:x,path:E}]}],paramsRankArr:[y,z,A,B,C,D,U,E]}}},serverRendered:d,routePath:"\u002Fshuku\u002F1738767\u002F",config:{_app:{basePath:Z,assetsPath:Z,cdnURL:"https:\u002F\u002Fcdn-front.qimao.com\u002Fqimao\u002F"}}}}("",false,"1",true,2,1,"基于昨日书籍热度排行","书籍热度排行","热度","3","4","default","原创风云榜","7","原创飞跃榜","8","大热榜","新书榜","2","完结榜","收藏榜","名","6","更新榜","top","leap","hot","new","over","collect","update","风羽轻轻","https:\u002F\u002Fwww.qimao.com\u002Fzuozhe\u002F%E9%A3%8E%E7%BE%BD%E8%BD%BB%E8%BD%BB_14\u002F","1738767","#ddd","#cfd9e0","#747474","基于书籍综合指标排行","原创风云榜是针对七猫中文网所有独家签约作品，基于上月的作品收入、好评数、打赏值、必读票数及作品题材五大维度综合计算，并于每月3日12点准时发布。","基于书籍增量指标排行","原创飞跃榜是针对七猫中文网所有独家签约作品，基于上月的作品收入增量、好评数增量、打赏值增量、必读票数增量及作品题材五大维度综合计算，并于每月3日12点准时发布。","女生新书：总字数低于50万，且每天更新的七猫原创作品。","男生新书：总字数低于50万，且每天更新的七猫原创作品。","基于书籍收藏总数排行","基于书籍30天内的更新总字数排行","热门作品排行","search",Array(2),"14","进士","推荐您下载【七猫免费小说App】，免费畅读全本","\u002F"));&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/ac83bad.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/480b60a.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/2032d81.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/a905119.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/cda3030.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/55b9a0d.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/214c30e.js"&gt;&lt;/script&gt;&lt;script defer="" src="https://cdn-front.qimao.com/qimao/js/2a34c77.js"&gt;&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;

</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=152be979-d1d3-4bbb-a526-47a038562a2f">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [14]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">ps</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'p'</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">ps</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>[&lt;p class="intro" data-v-093c045c="" data-v-1846831c=""&gt;结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。
乔熏全部忍耐，因为她深爱陆泽！
直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……
她终于释然：有些人的心永远捂不热。
乔熏写下一纸离婚协议，悄然离开。
……
两年后乔熏归来，身边追求者无数。
她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”
乔熏笑颜淡淡：“陆先生，我们之间再无关系！”
男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”&lt;/p&gt;, &lt;p&gt;乔熏不知道，是不是出轨的男人，都有两部手机。&lt;/p&gt;, &lt;p&gt;陆泽洗澡的时候，他的情人发来一张自拍。&lt;/p&gt;, &lt;p&gt;那是个很年轻的女孩儿，长相清秀，却穿着与年龄不符的贵气衣裳，所以显得有些局促。&lt;/p&gt;, &lt;p&gt;【陆先生，谢谢您的生日礼物。】&lt;/p&gt;, &lt;p&gt;乔熏看了很久，直到眼睛泛酸。她一直知道陆泽身边有个人，只是没想到会是这样的女孩子，心痛之外她也惊讶丈夫的喜好。&lt;/p&gt;, &lt;p&gt;她想，真是抱歉，看见了陆泽的秘密。&lt;/p&gt;, &lt;p&gt;背后传来浴室门拉开的声音。&lt;/p&gt;, &lt;p&gt;片刻，陆泽带着一身水气出来，雪白浴衣包裹着壁垒分明的腹肌和结实的胸膛，英挺性感。&lt;/p&gt;, &lt;p&gt;“还要看多久？”&lt;/p&gt;, &lt;p&gt;他抽掉乔熏手里手机，睨她一眼，便开始穿衣服。&lt;/p&gt;, &lt;p&gt;他的神情间，没有一丝被妻子戳穿的窘迫。乔熏清楚，他的底气来源于经济，因为乔熏是被他养在家里的，即使婚前她也曾是国内知名小提琴手。&lt;/p&gt;, &lt;p&gt;乔熏没跟他计较那张照片，她也计较不起。&lt;/p&gt;, &lt;p&gt;看出他要出门，她连忙开口：“陆泽，我有话想跟你说。”&lt;/p&gt;, &lt;p&gt;男人慢条斯理地扣好皮带，看向妻子，大概是想起方才她在床上逆来顺受的柔弱姿态，不禁哼笑：“又想要了？”&lt;/p&gt;, &lt;p&gt;但这亲昵，也不过是狎玩。&lt;/p&gt;, &lt;p&gt;他从未将这个妻子放在心上，只是因为一场意外，不得不娶罢了。&lt;/p&gt;, &lt;p&gt;陆泽收回目光，拿起床头柜上一块百达翡丽男表戴到手腕上，语气浅淡：“我还有五分钟时间，司机在楼下等着了。”&lt;/p&gt;, &lt;p&gt;乔熏猜到他去哪，眼神一暗：“陆泽，我想出去工作。”&lt;/p&gt;, &lt;p&gt;出去工作？&lt;/p&gt;, &lt;p&gt;陆泽扣好表带侧身看她，看了半晌，从衣袋里掏出支票薄写下一组数字，撕下来递给她：“在家里当全职太太不好吗？工作不适合你。”&lt;/p&gt;, &lt;p&gt;说完，他就要走。&lt;/p&gt;, &lt;p&gt;乔熏追过去，姿态放得很低：“我不怕辛苦！我想出去工作……我会拉小提琴……”&lt;/p&gt;, &lt;p&gt;男人没有耐心听下去。&lt;/p&gt;, &lt;p&gt;在他心里，乔熏就像是一株依附人的柔弱菟丝花，让人养习惯了，根本不适合抛头露面更吃不了苦。&lt;/p&gt;, &lt;p&gt;陆泽抬手看了下表：“时间到了！”&lt;/p&gt;, &lt;p&gt;他不带留恋地离开，乔熏留不住他，只在他握住门把时抓紧着问：“周六我爸爸过寿，你有时间吗？”&lt;/p&gt;, &lt;p&gt;陆泽脚步一顿：“再看吧！”&lt;/p&gt;, &lt;p&gt;门轻轻合上，一会儿楼下传来汽车发动的声音，渐行渐远。&lt;/p&gt;, &lt;p&gt;几分钟后，佣人上楼。&lt;/p&gt;, &lt;p&gt;她们知道先生太太感情一般，于是当了这个传声筒：“先生要去H市几天，说是有重要的事情。另外，刚刚公司送来一批先生的换洗衣物，太太，是送洗还是您亲自手洗熨烫？”&lt;/p&gt;, &lt;p&gt;乔熏跪坐在沙发上。&lt;/p&gt;, &lt;p&gt;半晌她才回神，轻声说：“手洗吧！”&lt;/p&gt;, &lt;p&gt;因为陆泽不喜欢干洗的溶剂味道，所以陆泽的所有衣服，包括西装大衣，几乎都是乔熏手洗然后熨烫。&lt;/p&gt;, &lt;p&gt;除了这个，其他方面，陆泽要求也高。&lt;/p&gt;, &lt;p&gt;他不爱吃外面的菜，他不喜欢卧室有一丝杂乱。乔熏便学了烹饪、整理、插花……她逐渐成为完美的全职太太。&lt;/p&gt;, &lt;p&gt;她的人生，也几乎只剩下陆泽。&lt;/p&gt;, &lt;p&gt;但陆泽依然不爱她。&lt;/p&gt;, &lt;p&gt;乔熏低头，注视着那张支票。&lt;/p&gt;, &lt;p&gt;去年她娘家倒了，哥哥被指控人在看守所，她的爸爸突发疾病每月所花都不止十万，每次回家沈姨都抱怨她从陆泽这里拿得太少。&lt;/p&gt;, &lt;p&gt;“他是陆氏医药集团总裁，身家千亿……乔熏你跟他是夫妻，他的难道不就是你的吗？”&lt;/p&gt;, &lt;p&gt;乔熏苦笑。&lt;/p&gt;, &lt;p&gt;陆泽的怎么会是她的？&lt;/p&gt;, &lt;p&gt;陆泽不爱她，平时对她很冷淡，他们的婚姻只有性没有爱，他甚至不允许她生下他的孩子，每次同房他都会提醒她吃药。&lt;/p&gt;, &lt;p&gt;对，她得吃药。&lt;/p&gt;, &lt;p&gt;乔熏摸到药瓶，倒出一颗木然吞下。&lt;/p&gt;, &lt;p&gt;吞完药片，她轻轻拉开一个小抽屉，里面是本厚厚的日记本，翻开全是18岁的乔熏对陆泽满满的爱恋——&lt;/p&gt;, &lt;p&gt;六年，她爱了他整整六年！&lt;/p&gt;, &lt;p&gt;乔熏蓦地闭上眼睛。&lt;/p&gt;, &lt;p&gt;……&lt;/p&gt;, &lt;p&gt;乔熏没等到陆泽回来，周五晚上，乔家出了大事。&lt;/p&gt;, &lt;p&gt;有消息递出来，乔家长子——乔时宴，因为乔氏集团的经济案，可能要判十年。&lt;/p&gt;, &lt;p&gt;十年，足以摧毁一个人。&lt;/p&gt;, &lt;p&gt;当晚，乔父急性脑出血入院，情况很危急需要立刻手术。&lt;/p&gt;, &lt;p&gt;乔熏站在医院过道，不停给陆泽打电话，但是打了好几次也没有人接。就在她放弃时，陆泽给她发了微信。&lt;/p&gt;, &lt;p&gt;一如既往，惜字如金。&lt;/p&gt;, &lt;p&gt;【我还在H市，有事的话找秦秘书。】&lt;/p&gt;, &lt;p&gt;乔熏再打过去，这一次陆泽接听了，她连忙说：“陆泽，我爸爸……”&lt;/p&gt;, &lt;p&gt;陆泽打断她。&lt;/p&gt;, &lt;p&gt;他的语气带着一丝不耐：“是需要用钱吗？我说过很多次了，急用钱的话就找秦秘书……乔熏，你在听吗？”&lt;/p&gt;, &lt;p&gt;……&lt;/p&gt;, &lt;p&gt;乔熏仰头望着电子屏幕，表情怔怔的，那上面正在放新闻。&lt;/p&gt;, &lt;p&gt;【陆氏医药集团总裁，为博红颜一笑，包下整个迪斯尼放烟花。】&lt;/p&gt;, &lt;p&gt;满天璀璨烟花下，&lt;/p&gt;, &lt;p&gt;年轻的女孩儿坐在轮椅上，笑得清纯可爱，而她的丈夫陆泽，站在轮椅后面……他手里握着手机正与她通话。&lt;/p&gt;, &lt;p&gt;乔熏轻轻眨眼。&lt;/p&gt;, &lt;p&gt;良久，她声音带了一丝破碎：“陆泽你在哪儿？”&lt;/p&gt;, &lt;p&gt;对面顿了顿，似乎很不高兴她的查岗，但还是敷衍了句：“还在忙，没事的话我挂了，你跟秦秘书联系。”&lt;/p&gt;, &lt;p&gt;他没有察觉她快哭的语调，但他低头望向旁人的目光……很温柔很温柔。&lt;/p&gt;, &lt;p&gt;乔熏眼前一片模糊——&lt;/p&gt;, &lt;p&gt;原来，陆泽也有这么温柔的样子。&lt;/p&gt;, &lt;p&gt;背后，传来继母沈清的声音：“跟陆泽联系上没有？乔熏，这个事情你一定要找陆泽帮……”&lt;/p&gt;, &lt;p&gt;沈清的话顿住，因为她也看见了电子屏幕上的一幕。&lt;/p&gt;, &lt;p&gt;半晌，沈清才找回自己的声音：“他又去H市了？乔熏我就不信，当年陆泽昏迷，这个叫白筱筱的女的拉个小提琴就把人唤醒了？即使真是这样，有这样报答的吗？”&lt;/p&gt;, &lt;p&gt;“你的生日他都记不住！”&lt;/p&gt;, &lt;p&gt;……&lt;/p&gt;, &lt;p&gt;沈姨越说越气，再想想乔家处境，不禁掉下眼泪：“但是乔熏……你可要拎拎清，别在这个时候跟陆泽闹。”&lt;/p&gt;, &lt;p&gt;乔熏握紧手掌，指甲掐进肉里，可她感觉不到疼痛。&lt;/p&gt;, &lt;p&gt;跟陆泽闹？&lt;/p&gt;, &lt;p&gt;她不会的，不是因为她这个陆太太识大体，而是因为她没有资格。&lt;/p&gt;, &lt;p&gt;不被爱的妻子，名分只是形同虚设！&lt;/p&gt;, &lt;p&gt;她凝视着那漫天的烟花，很轻地说了句：“这么多烟花，一定要花很多钱吧！”&lt;/p&gt;, &lt;p&gt;沈清不明白她的意思。&lt;/p&gt;, &lt;p&gt;乔熏垂了眸子，开始拨打秦秘书的电话。&lt;/p&gt;, &lt;p&gt;深夜，扰人清梦，总归让人不快。&lt;/p&gt;, &lt;p&gt;秦秘书跟在陆泽身边久了，地位超然，况且她也知道陆泽对这个妻子不在意，于是在听说了乔熏的来意以后，语气凉薄又咄咄逼人。&lt;/p&gt;, &lt;p&gt;“陆太太您得先申请，让陆总签字，才能拿到支票。”&lt;/p&gt;, &lt;p&gt;“就像您身上的珠宝，也是需要登记才能使用。”&lt;/p&gt;, &lt;p&gt;“陆太太，我的意思你明白吧？”&lt;/p&gt;, &lt;p&gt;……&lt;/p&gt;, &lt;p&gt;乔熏挂了电话。&lt;/p&gt;, &lt;p&gt;她低着头很安静，半晌，她抬眼看着玻璃中的自己……轻轻抬了手。&lt;/p&gt;, &lt;p&gt;纤细的无名指上，戴着结婚钻戒。&lt;/p&gt;, &lt;p&gt;这是她身上，唯一不需要向陆泽申请，不需要向他的秘书登记报备的东西……她这个陆太太当得多可悲！&lt;/p&gt;, &lt;p&gt;乔熏恍惚地眨了下眼，低道：“帮我找个人，把婚戒卖了！”&lt;/p&gt;, &lt;p&gt;沈清呆住：“乔熏你是不是疯了？”&lt;/p&gt;, &lt;p&gt;乔熏缓缓转身，深夜落寞的大厅，她的脚步声都是孤独的……走了几步，乔熏顿住身形，轻而坚定地说：“沈姨，我很清醒！从来没有这样清醒过。”&lt;/p&gt;, &lt;p&gt;她要跟陆泽离婚。&lt;/p&gt;, &lt;p class="p-txt qm-footer-con-row" data-v-29762df3=""&gt;&lt;span class="txt" data-v-29762df3=""&gt;客服电话：400-855-9290&lt;/span&gt; &lt;span class="txt" data-v-29762df3=""&gt;工作时间：周一至周五9:00-18:00&lt;/span&gt;&lt;/p&gt;, &lt;p class="p-copyright qm-footer-con-row" data-v-29762df3=""&gt;
            上海七猫文化传媒有限公司   © 2017 www.qimao.com All rights reserved   
            &lt;a data-v-29762df3="" href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank"&gt;
                沪ICP备17012825号-6
            &lt;/a&gt;
             沪公网安备 31011502010023号
            &lt;a data-v-29762df3="" href="https://wap.scjgj.sh.gov.cn/businessCheck/verifKey.do?showType=extShow&amp;amp;serial=9031000020190722152105000004867583-SAIC_SHOW_310000-2020030415053789015&amp;amp;signData=MEQCIEkBkB9iRQU6cFZkvRZxUFL3bfnb79F47g/DlN1cyQz2AiAMvdmNY5e++2nkv9YcqfTuyni81uITxhyu08vw3HgQNA=="&gt;&lt;img alt="" data-v-29762df3="" height="20" width="20"/&gt;&lt;/a&gt; &lt;br data-v-29762df3=""/&gt;
            出版物经营许可证 新出发沪批字第Y7129号  沪网文 [2020] 1747-135号  沪ICP证：沪B2-20190085
        &lt;/p&gt;, &lt;p class="p-company qm-footer-con-row" data-v-29762df3=""&gt;&lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="上海网警网络举报平台" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="https://www.12377.cn/"&gt;&lt;img alt="中央网信办不良信息举报中心" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="网络举报APP下载" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="http://www.shjbzx.cn/"&gt;&lt;img alt="上海市互联网违法和不良信息举报中心" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt; &lt;a data-v-29762df3="" href="javascript:void(0)"&gt;&lt;img alt="企业注册登记信息" data-v-29762df3="" height="40" width="110"/&gt;&lt;/a&gt;&lt;/p&gt;]
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=7bdd2733-3db5-4475-b4ff-5cca264b3c70">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [15]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">ps</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'p'</span><span class="p">)</span>
<span class="n">text</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">ps</span><span class="p">:</span>
    <span class="nb">print</span><span class="p">(</span><span class="n">i</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。
乔熏全部忍耐，因为她深爱陆泽！
直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……
她终于释然：有些人的心永远捂不热。
乔熏写下一纸离婚协议，悄然离开。
……
两年后乔熏归来，身边追求者无数。
她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”
乔熏笑颜淡淡：“陆先生，我们之间再无关系！”
男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”
乔熏不知道，是不是出轨的男人，都有两部手机。
陆泽洗澡的时候，他的情人发来一张自拍。
那是个很年轻的女孩儿，长相清秀，却穿着与年龄不符的贵气衣裳，所以显得有些局促。
【陆先生，谢谢您的生日礼物。】
乔熏看了很久，直到眼睛泛酸。她一直知道陆泽身边有个人，只是没想到会是这样的女孩子，心痛之外她也惊讶丈夫的喜好。
她想，真是抱歉，看见了陆泽的秘密。
背后传来浴室门拉开的声音。
片刻，陆泽带着一身水气出来，雪白浴衣包裹着壁垒分明的腹肌和结实的胸膛，英挺性感。
“还要看多久？”
他抽掉乔熏手里手机，睨她一眼，便开始穿衣服。
他的神情间，没有一丝被妻子戳穿的窘迫。乔熏清楚，他的底气来源于经济，因为乔熏是被他养在家里的，即使婚前她也曾是国内知名小提琴手。
乔熏没跟他计较那张照片，她也计较不起。
看出他要出门，她连忙开口：“陆泽，我有话想跟你说。”
男人慢条斯理地扣好皮带，看向妻子，大概是想起方才她在床上逆来顺受的柔弱姿态，不禁哼笑：“又想要了？”
但这亲昵，也不过是狎玩。
他从未将这个妻子放在心上，只是因为一场意外，不得不娶罢了。
陆泽收回目光，拿起床头柜上一块百达翡丽男表戴到手腕上，语气浅淡：“我还有五分钟时间，司机在楼下等着了。”
乔熏猜到他去哪，眼神一暗：“陆泽，我想出去工作。”
出去工作？
陆泽扣好表带侧身看她，看了半晌，从衣袋里掏出支票薄写下一组数字，撕下来递给她：“在家里当全职太太不好吗？工作不适合你。”
说完，他就要走。
乔熏追过去，姿态放得很低：“我不怕辛苦！我想出去工作……我会拉小提琴……”
男人没有耐心听下去。
在他心里，乔熏就像是一株依附人的柔弱菟丝花，让人养习惯了，根本不适合抛头露面更吃不了苦。
陆泽抬手看了下表：“时间到了！”
他不带留恋地离开，乔熏留不住他，只在他握住门把时抓紧着问：“周六我爸爸过寿，你有时间吗？”
陆泽脚步一顿：“再看吧！”
门轻轻合上，一会儿楼下传来汽车发动的声音，渐行渐远。
几分钟后，佣人上楼。
她们知道先生太太感情一般，于是当了这个传声筒：“先生要去H市几天，说是有重要的事情。另外，刚刚公司送来一批先生的换洗衣物，太太，是送洗还是您亲自手洗熨烫？”
乔熏跪坐在沙发上。
半晌她才回神，轻声说：“手洗吧！”
因为陆泽不喜欢干洗的溶剂味道，所以陆泽的所有衣服，包括西装大衣，几乎都是乔熏手洗然后熨烫。
除了这个，其他方面，陆泽要求也高。
他不爱吃外面的菜，他不喜欢卧室有一丝杂乱。乔熏便学了烹饪、整理、插花……她逐渐成为完美的全职太太。
她的人生，也几乎只剩下陆泽。
但陆泽依然不爱她。
乔熏低头，注视着那张支票。
去年她娘家倒了，哥哥被指控人在看守所，她的爸爸突发疾病每月所花都不止十万，每次回家沈姨都抱怨她从陆泽这里拿得太少。
“他是陆氏医药集团总裁，身家千亿……乔熏你跟他是夫妻，他的难道不就是你的吗？”
乔熏苦笑。
陆泽的怎么会是她的？
陆泽不爱她，平时对她很冷淡，他们的婚姻只有性没有爱，他甚至不允许她生下他的孩子，每次同房他都会提醒她吃药。
对，她得吃药。
乔熏摸到药瓶，倒出一颗木然吞下。
吞完药片，她轻轻拉开一个小抽屉，里面是本厚厚的日记本，翻开全是18岁的乔熏对陆泽满满的爱恋——
六年，她爱了他整整六年！
乔熏蓦地闭上眼睛。
……
乔熏没等到陆泽回来，周五晚上，乔家出了大事。
有消息递出来，乔家长子——乔时宴，因为乔氏集团的经济案，可能要判十年。
十年，足以摧毁一个人。
当晚，乔父急性脑出血入院，情况很危急需要立刻手术。
乔熏站在医院过道，不停给陆泽打电话，但是打了好几次也没有人接。就在她放弃时，陆泽给她发了微信。
一如既往，惜字如金。
【我还在H市，有事的话找秦秘书。】
乔熏再打过去，这一次陆泽接听了，她连忙说：“陆泽，我爸爸……”
陆泽打断她。
他的语气带着一丝不耐：“是需要用钱吗？我说过很多次了，急用钱的话就找秦秘书……乔熏，你在听吗？”
……
乔熏仰头望着电子屏幕，表情怔怔的，那上面正在放新闻。
【陆氏医药集团总裁，为博红颜一笑，包下整个迪斯尼放烟花。】
满天璀璨烟花下，
年轻的女孩儿坐在轮椅上，笑得清纯可爱，而她的丈夫陆泽，站在轮椅后面……他手里握着手机正与她通话。
乔熏轻轻眨眼。
良久，她声音带了一丝破碎：“陆泽你在哪儿？”
对面顿了顿，似乎很不高兴她的查岗，但还是敷衍了句：“还在忙，没事的话我挂了，你跟秦秘书联系。”
他没有察觉她快哭的语调，但他低头望向旁人的目光……很温柔很温柔。
乔熏眼前一片模糊——
原来，陆泽也有这么温柔的样子。
背后，传来继母沈清的声音：“跟陆泽联系上没有？乔熏，这个事情你一定要找陆泽帮……”
沈清的话顿住，因为她也看见了电子屏幕上的一幕。
半晌，沈清才找回自己的声音：“他又去H市了？乔熏我就不信，当年陆泽昏迷，这个叫白筱筱的女的拉个小提琴就把人唤醒了？即使真是这样，有这样报答的吗？”
“你的生日他都记不住！”
……
沈姨越说越气，再想想乔家处境，不禁掉下眼泪：“但是乔熏……你可要拎拎清，别在这个时候跟陆泽闹。”
乔熏握紧手掌，指甲掐进肉里，可她感觉不到疼痛。
跟陆泽闹？
她不会的，不是因为她这个陆太太识大体，而是因为她没有资格。
不被爱的妻子，名分只是形同虚设！
她凝视着那漫天的烟花，很轻地说了句：“这么多烟花，一定要花很多钱吧！”
沈清不明白她的意思。
乔熏垂了眸子，开始拨打秦秘书的电话。
深夜，扰人清梦，总归让人不快。
秦秘书跟在陆泽身边久了，地位超然，况且她也知道陆泽对这个妻子不在意，于是在听说了乔熏的来意以后，语气凉薄又咄咄逼人。
“陆太太您得先申请，让陆总签字，才能拿到支票。”
“就像您身上的珠宝，也是需要登记才能使用。”
“陆太太，我的意思你明白吧？”
……
乔熏挂了电话。
她低着头很安静，半晌，她抬眼看着玻璃中的自己……轻轻抬了手。
纤细的无名指上，戴着结婚钻戒。
这是她身上，唯一不需要向陆泽申请，不需要向他的秘书登记报备的东西……她这个陆太太当得多可悲！
乔熏恍惚地眨了下眼，低道：“帮我找个人，把婚戒卖了！”
沈清呆住：“乔熏你是不是疯了？”
乔熏缓缓转身，深夜落寞的大厅，她的脚步声都是孤独的……走了几步，乔熏顿住身形，轻而坚定地说：“沈姨，我很清醒！从来没有这样清醒过。”
她要跟陆泽离婚。
None
None
None
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=9ed5c978-d13d-4144-9aa2-4d05be5fe36f">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [16]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="n">ps</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'p'</span><span class="p">)</span>
<span class="n">text</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">ps</span><span class="p">:</span>
    <span class="n">text</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">i</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">text</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
<pre>['结婚三年，他对她弃如敝履，却待白月光如珍似宝。他冷落她、苛待她，他们的婚姻犹如牢笼。\n乔熏全部忍耐，因为她深爱陆泽！\n直到那晚大雨滂沱，他抛下怀孕的她飞往国外陪伴白月光，而乔熏遭遇意外，却只能爬着出去叫救护车……\n她终于释然：有些人的心永远捂不热。\n乔熏写下一纸离婚协议，悄然离开。\n……\n两年后乔熏归来，身边追求者无数。\n她的渣前夫却将她按在门板上，步步紧逼：“陆太太，我还没有签字！你休想跟别人好！”\n乔熏笑颜淡淡：“陆先生，我们之间再无关系！”\n男人眼眶微红，颤着声音说出结婚时的誓言：“陆泽乔熏这辈子不离不弃，禁止离婚！”', '乔熏不知道，是不是出轨的男人，都有两部手机。', '陆泽洗澡的时候，他的情人发来一张自拍。', '那是个很年轻的女孩儿，长相清秀，却穿着与年龄不符的贵气衣裳，所以显得有些局促。', '【陆先生，谢谢您的生日礼物。】', '乔熏看了很久，直到眼睛泛酸。她一直知道陆泽身边有个人，只是没想到会是这样的女孩子，心痛之外她也惊讶丈夫的喜好。', '她想，真是抱歉，看见了陆泽的秘密。', '背后传来浴室门拉开的声音。', '片刻，陆泽带着一身水气出来，雪白浴衣包裹着壁垒分明的腹肌和结实的胸膛，英挺性感。', '“还要看多久？”', '他抽掉乔熏手里手机，睨她一眼，便开始穿衣服。', '他的神情间，没有一丝被妻子戳穿的窘迫。乔熏清楚，他的底气来源于经济，因为乔熏是被他养在家里的，即使婚前她也曾是国内知名小提琴手。', '乔熏没跟他计较那张照片，她也计较不起。', '看出他要出门，她连忙开口：“陆泽，我有话想跟你说。”', '男人慢条斯理地扣好皮带，看向妻子，大概是想起方才她在床上逆来顺受的柔弱姿态，不禁哼笑：“又想要了？”', '但这亲昵，也不过是狎玩。', '他从未将这个妻子放在心上，只是因为一场意外，不得不娶罢了。', '陆泽收回目光，拿起床头柜上一块百达翡丽男表戴到手腕上，语气浅淡：“我还有五分钟时间，司机在楼下等着了。”', '乔熏猜到他去哪，眼神一暗：“陆泽，我想出去工作。”', '出去工作？', '陆泽扣好表带侧身看她，看了半晌，从衣袋里掏出支票薄写下一组数字，撕下来递给她：“在家里当全职太太不好吗？工作不适合你。”', '说完，他就要走。', '乔熏追过去，姿态放得很低：“我不怕辛苦！我想出去工作……我会拉小提琴……”', '男人没有耐心听下去。', '在他心里，乔熏就像是一株依附人的柔弱菟丝花，让人养习惯了，根本不适合抛头露面更吃不了苦。', '陆泽抬手看了下表：“时间到了！”', '他不带留恋地离开，乔熏留不住他，只在他握住门把时抓紧着问：“周六我爸爸过寿，你有时间吗？”', '陆泽脚步一顿：“再看吧！”', '门轻轻合上，一会儿楼下传来汽车发动的声音，渐行渐远。', '几分钟后，佣人上楼。', '她们知道先生太太感情一般，于是当了这个传声筒：“先生要去H市几天，说是有重要的事情。另外，刚刚公司送来一批先生的换洗衣物，太太，是送洗还是您亲自手洗熨烫？”', '乔熏跪坐在沙发上。', '半晌她才回神，轻声说：“手洗吧！”', '因为陆泽不喜欢干洗的溶剂味道，所以陆泽的所有衣服，包括西装大衣，几乎都是乔熏手洗然后熨烫。', '除了这个，其他方面，陆泽要求也高。', '他不爱吃外面的菜，他不喜欢卧室有一丝杂乱。乔熏便学了烹饪、整理、插花……她逐渐成为完美的全职太太。', '她的人生，也几乎只剩下陆泽。', '但陆泽依然不爱她。', '乔熏低头，注视着那张支票。', '去年她娘家倒了，哥哥被指控人在看守所，她的爸爸突发疾病每月所花都不止十万，每次回家沈姨都抱怨她从陆泽这里拿得太少。', '“他是陆氏医药集团总裁，身家千亿……乔熏你跟他是夫妻，他的难道不就是你的吗？”', '乔熏苦笑。', '陆泽的怎么会是她的？', '陆泽不爱她，平时对她很冷淡，他们的婚姻只有性没有爱，他甚至不允许她生下他的孩子，每次同房他都会提醒她吃药。', '对，她得吃药。', '乔熏摸到药瓶，倒出一颗木然吞下。', '吞完药片，她轻轻拉开一个小抽屉，里面是本厚厚的日记本，翻开全是18岁的乔熏对陆泽满满的爱恋——', '六年，她爱了他整整六年！', '乔熏蓦地闭上眼睛。', '……', '乔熏没等到陆泽回来，周五晚上，乔家出了大事。', '有消息递出来，乔家长子——乔时宴，因为乔氏集团的经济案，可能要判十年。', '十年，足以摧毁一个人。', '当晚，乔父急性脑出血入院，情况很危急需要立刻手术。', '乔熏站在医院过道，不停给陆泽打电话，但是打了好几次也没有人接。就在她放弃时，陆泽给她发了微信。', '一如既往，惜字如金。', '【我还在H市，有事的话找秦秘书。】', '乔熏再打过去，这一次陆泽接听了，她连忙说：“陆泽，我爸爸……”', '陆泽打断她。', '他的语气带着一丝不耐：“是需要用钱吗？我说过很多次了，急用钱的话就找秦秘书……乔熏，你在听吗？”', '……', '乔熏仰头望着电子屏幕，表情怔怔的，那上面正在放新闻。', '【陆氏医药集团总裁，为博红颜一笑，包下整个迪斯尼放烟花。】', '满天璀璨烟花下，', '年轻的女孩儿坐在轮椅上，笑得清纯可爱，而她的丈夫陆泽，站在轮椅后面……他手里握着手机正与她通话。', '乔熏轻轻眨眼。', '良久，她声音带了一丝破碎：“陆泽你在哪儿？”', '对面顿了顿，似乎很不高兴她的查岗，但还是敷衍了句：“还在忙，没事的话我挂了，你跟秦秘书联系。”', '他没有察觉她快哭的语调，但他低头望向旁人的目光……很温柔很温柔。', '乔熏眼前一片模糊——', '原来，陆泽也有这么温柔的样子。', '背后，传来继母沈清的声音：“跟陆泽联系上没有？乔熏，这个事情你一定要找陆泽帮……”', '沈清的话顿住，因为她也看见了电子屏幕上的一幕。', '半晌，沈清才找回自己的声音：“他又去H市了？乔熏我就不信，当年陆泽昏迷，这个叫白筱筱的女的拉个小提琴就把人唤醒了？即使真是这样，有这样报答的吗？”', '“你的生日他都记不住！”', '……', '沈姨越说越气，再想想乔家处境，不禁掉下眼泪：“但是乔熏……你可要拎拎清，别在这个时候跟陆泽闹。”', '乔熏握紧手掌，指甲掐进肉里，可她感觉不到疼痛。', '跟陆泽闹？', '她不会的，不是因为她这个陆太太识大体，而是因为她没有资格。', '不被爱的妻子，名分只是形同虚设！', '她凝视着那漫天的烟花，很轻地说了句：“这么多烟花，一定要花很多钱吧！”', '沈清不明白她的意思。', '乔熏垂了眸子，开始拨打秦秘书的电话。', '深夜，扰人清梦，总归让人不快。', '秦秘书跟在陆泽身边久了，地位超然，况且她也知道陆泽对这个妻子不在意，于是在听说了乔熏的来意以后，语气凉薄又咄咄逼人。', '“陆太太您得先申请，让陆总签字，才能拿到支票。”', '“就像您身上的珠宝，也是需要登记才能使用。”', '“陆太太，我的意思你明白吧？”', '……', '乔熏挂了电话。', '她低着头很安静，半晌，她抬眼看着玻璃中的自己……轻轻抬了手。', '纤细的无名指上，戴着结婚钻戒。', '这是她身上，唯一不需要向陆泽申请，不需要向他的秘书登记报备的东西……她这个陆太太当得多可悲！', '乔熏恍惚地眨了下眼，低道：“帮我找个人，把婚戒卖了！”', '沈清呆住：“乔熏你是不是疯了？”', '乔熏缓缓转身，深夜落寞的大厅，她的脚步声都是孤独的……走了几步，乔熏顿住身形，轻而坚定地说：“沈姨，我很清醒！从来没有这样清醒过。”', '她要跟陆泽离婚。', None, None, None]
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=1ed9ac95-7c23-4160-8410-f62d9fa40bb9">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [32]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">from</span> <span class="nn">bs4</span> <span class="kn">import</span> <span class="n">BeautifulSoup</span>
<span class="kn">import</span> <span class="nn">requests</span>

<span class="n">url</span><span class="o">=</span><span class="s1">'https://zh.tradingeconomics.com/china/exports'</span>
<span class="n">headers</span><span class="o">=</span><span class="p">{</span><span class="s1">'User-agent'</span><span class="p">:</span><span class="s1">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0'</span><span class="p">}</span>
<span class="n">res</span><span class="o">=</span><span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">url</span><span class="o">=</span><span class="n">url</span><span class="p">,</span><span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>

<span class="n">res</span><span class="o">.</span><span class="n">encoding</span> <span class="o">=</span> <span class="s1">'utf-8'</span>
<span class="n">soup</span><span class="o">=</span><span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">res</span><span class="o">.</span><span class="n">text</span><span class="p">,</span><span class="s2">"html.parser"</span><span class="p">)</span>
<span class="n">names</span><span class="o">=</span><span class="p">[]</span>
<span class="n">tds</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'td'</span><span class="p">)</span>
<span class="n">names__</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">tds</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">a</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">find</span><span class="p">(</span><span class="s1">'a'</span><span class="p">)</span>
        <span class="n">names</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">a</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">names</span><span class="p">:</span>
    <span class="n">text__</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">' '</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">text_</span><span class="o">=</span><span class="n">text__</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\r</span><span class="s1">'</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">text</span><span class="o">=</span><span class="n">text_</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">'</span><span class="p">,</span><span class="s1">''</span><span class="p">)</span>
    <span class="n">names__</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">text</span><span class="p">)</span>
<span class="n">trs</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'tr'</span><span class="p">)</span>
<span class="n">numbers</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">trs</span><span class="p">:</span>
    <span class="k">try</span><span class="p">:</span>
        <span class="n">td</span><span class="o">=</span><span class="n">i</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'td'</span><span class="p">)[</span><span class="mi">1</span><span class="p">]</span>
        <span class="n">numbers</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">td</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
    <span class="k">except</span><span class="p">:</span>
        <span class="k">pass</span>
<span class="n">data1</span><span class="o">=</span><span class="p">{</span>
    <span class="s1">'类型'</span><span class="p">:</span><span class="n">names__</span><span class="p">,</span>
    <span class="s1">'额度'</span><span class="p">:</span><span class="n">numbers</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="mi">8</span><span class="p">]</span>
<span class="p">}</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=0d4b4cff-55b7-4e28-b284-d98324e868dc">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [33]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<span class="kn">from</span> <span class="nn">bs4</span> <span class="kn">import</span> <span class="n">BeautifulSoup</span>
<span class="kn">import</span> <span class="nn">requests</span>

<span class="n">url</span><span class="o">=</span><span class="s1">'https://www.qimao.com/shuku/1738767/'</span>
<span class="n">headers</span><span class="o">=</span><span class="p">{</span><span class="s1">'User-agent'</span><span class="p">:</span><span class="s1">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0'</span><span class="p">}</span>
<span class="n">res</span><span class="o">=</span><span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">url</span><span class="o">=</span><span class="n">url</span><span class="p">,</span><span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">)</span>

<span class="n">res</span><span class="o">.</span><span class="n">encoding</span> <span class="o">=</span> <span class="s1">'utf-8'</span>
<span class="n">soup</span><span class="o">=</span><span class="n">BeautifulSoup</span><span class="p">(</span><span class="n">res</span><span class="o">.</span><span class="n">text</span><span class="p">,</span><span class="s2">"html.parser"</span><span class="p">)</span>
<span class="n">ps</span><span class="o">=</span><span class="n">soup</span><span class="o">.</span><span class="n">findAll</span><span class="p">(</span><span class="s1">'p'</span><span class="p">)</span>
<span class="n">text</span><span class="o">=</span><span class="p">[]</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">ps</span><span class="p">:</span>
    <span class="n">text</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">i</span><span class="o">.</span><span class="n">string</span><span class="p">)</span>
<span class="n">data2</span><span class="o">=</span><span class="p">{</span>
    <span class="s1">'文本'</span><span class="p">:</span><span class="n">text</span>
<span class="p">}</span>
<span class="n">pf1</span><span class="o">=</span><span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="n">data1</span><span class="p">)</span>
<span class="n">pf2</span><span class="o">=</span><span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="n">data2</span><span class="p">)</span>
<span class="n">xlsx</span><span class="o">=</span><span class="n">pd</span><span class="o">.</span><span class="n">ExcelWriter</span><span class="p">(</span><span class="s1">'C:</span><span class="se">\\</span><span class="s1">Users</span><span class="se">\\</span><span class="s1">DELL</span><span class="se">\\</span><span class="s1">Desktop</span><span class="se">\\</span><span class="s1">魏.xlsx'</span><span class="p">)</span>
<span class="n">pf1</span><span class="o">.</span><span class="n">to_excel</span><span class="p">(</span><span class="n">xlsx</span><span class="p">,</span><span class="n">sheet_name</span><span class="o">=</span><span class="s1">'sheet1'</span><span class="p">)</span>
<span class="n">pf2</span><span class="o">.</span><span class="n">to_excel</span><span class="p">(</span><span class="n">xlsx</span><span class="p">,</span><span class="n">sheet_name</span><span class="o">=</span><span class="s1">'sheet2'</span><span class="p">)</span>
<span class="n">xlsx</span><span class="o">.</span><span class="n">close</span><span class="p">()</span><span class="c1">#将数据写入excel文件</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=d5e7f1d7-5b56-4fd1-99b4-3deddc818e8f">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span> 
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=aee4d7b1-0481-4eda-9aab-ba0c4ee1e478">
<div class="jp-Cell-inputWrapper" tabindex="0">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="cm-editor cm-s-jupyter">
<div class="highlight hl-ipython3"><pre><span></span> 
</pre></div>
</div>
</div>
</div>
</div>
</div>
</main>
</body>
</html>
